美文网首页
JavaScript 相关概念

JavaScript 相关概念

作者: BlueSkyBlue | 来源:发表于2020-04-25 15:39 被阅读0次

IIFE

IIFE:Immediately-Invoked Function Expression.

匿名函数自调用:

(function(){
  console.log('Anonymous Function')
})()

作用:

  1. 隐藏实现
  2. 不会影响外面命名空间(全局命名空间)
  3. 编写js模块

this

所有函数内部都有一个变量this。它的值是调用函数的当前对象。
任何函数本质上都是通过某个对象调用的。如果没有指定就是window。

如何确定this的值:

test()

此时的this值是window

p.test()

此时的this值是p。

new test()

此时的this为新创建的对象。

p.call(obj)

此时的this为obj。

以下两种情况不加分号会有问题:

  1. 小括号开头的前一条语句。
var a = 3;
(function () {
    
})()

解释:如果不加分号会将3看做是函数名调用之后的函数。

  1. 中方括号开头的前一条语句。
var b = 4;
    [1, 3].forEach(function () {

})

解释:此处如果4后面不加分号,会将之后的[1, 3]看做是截取数组的操作,而4并不是数组,最后4[1, 3]返回的是undefined。

相关文章

网友评论

      本文标题:JavaScript 相关概念

      本文链接:https://www.haomeiwen.com/subject/xbqqwhtx.html