this关键字在JavaScript中是一个非常重要的概念,它通常指向当前对象的上下文。在全局作用域中,this通常指向全局对象(在浏览器中是window对象,在Node.js中是global对象)。在函数内部,this的指向取决于函数的调用方式。 3. 匿名函数中this指向的特殊情况 在匿名函数中,this的指向可能因调用上下文的不同而有所变化。以下...
在函数表达式中,创建一个函数并将它赋值给一个变量,若此时function关键字后没有标识符,那么创建的函数可称为匿名函数 匿名函数中的this指向 在一般情况下,this对象是在运行时基于函数的执行环境绑定的。若是在全局函数中,则this指向window;当函数被作为某个对象的方法调用时,this指向该对象。但是在匿名函数中,因为匿...
1、匿名函数中 this一般指向window对象 2、闭包函数中的this,指向window varmod ={ init: function(){ console.log('this',this);varaa =function(){ console.log('匿名函数中this',this); } aa();//相对于自执行函数function bb(){ console.log('闭包函数中的this',this); } bb(); } } mod.init...
person作为一个对象实例,通过点语法调用say(),所以this指向person;因为做了变量赋值,所以最后一行say()就相当于作为普通函数调用,在严格模式下,因为this指向undefined,所以this.username就抛异常了 3、作为构造函数来调用 // "use strict"; function Person(username) { this.username = username } let person = Pe...
JavaScript中匿名函数this指向问题 this对象是在运行时基于函数执行环境绑定的,在全局函数中,this=window,在函数被作为某个对象的方法调用时,this等于这个对象。 但是匿名函数的执行环境是全局性的,所以匿名函数的this指向是window var name = 'window' var person = {...
this不遵守作用域链查找规则。函数执行时,this 总是指向调用该函数的对象,规则可以简单概括如下:有对象...
则匿名函数的this指向全局
匿名函数的this指向global,在浏览器中就是window。 例外: 1、匿名函数作为对象的方法时,this指向方法的调用者。 2、匿名函数作为事件函数时,this指向事件绑定的对象。 二、箭头函数()=> {} 2.1 作用域 箭头函数的作用域,为定义处(也就是调用处)的上下文,变量查找遵循从内层到外层的查找原则。
// 匿名函数的this指向具有全局性 当this在函数内找不到时,会去全局查找 var name = "张三"; var obj = { name: "李四", getNameFun: function(){ return function(){ return this.name; } } }; console.log(obj.getNameFun()()); // 张三 // 换种写法 // 箭头函数的this由定义该箭头函数的...
console.log(this.name)// window } sum() } } person.wrap() wrap内部是一个自执行的匿名函数,this.name 打出来是 window那根据那句老话:this指向最后一个调用者;感觉无法分析,因为是自己执行自己。 用函数调用模式来分析 JS(ES5)里面有三种函数调用形式: ...