注册

前端面试常问的基础(三)

 

 new 运算符是用来实例化一个类,从而在内存中分配一个实例对象。

 通过new可以产生原对象的一个实例对象,而这个实例对象继承了原对象的属性和方法。因此, new存在的意义在于它实现了javascript中的继承,而不仅仅是实例化了一个对象!

  • JavaScript 中有哪些不同的函数调用模式? 详细解释。 提示:有四种模式,函数调用,方法调用,.call() 和 .apply()。
  1. 函数模式 fn()
  2. 方法模式 a.fn()
  3. 构造器模式 new
  4. 上下文模式 call apply

/*apply()方法*/两个参数 function.apply(thisObj[, argArray]) /*call()方法*/多个参数 function.call(thisObj[, arg1[, arg2[, [,...argN]]]]);


  • 新 ECMAScript 提案

https://www.cnblogs.com/fundebug/p/what-is-new-in-javascript-for-2019.html

bigint

class 增加静态方法和属性 私有属性和方法


symbol值在序列化的过程中会被忽略或被转换成null



Fetch API 相对于传统的 Ajax 有哪些改进?

改进:promise 风格的api,async/await方式调用更友好,更简洁,错误处理更直观

缺点/难点:

  • fetch 是一种底层的 api,json传值必须转换成字符串,并且设置content-Type为application/json
  • fetch 默认情况下不会发送 cookie
  • 无法获取progress,也就是说无法用fetch做出有进度条的请求
  • 不能中断,我们知道传统的xhr是可以通过调用abort方法来终止我们的请求的

其实javasript的社区一直很活跃,相信上述问题很快会在未来的更新中解决


0 个评论

要回复文章请先登录注册