JS关于dom结构中的this该怎么判断?

代码如下:


var body = document.querySelector('body');

body.style.background = '#000';

console.log(body.style.background);

//    "rgb(0, 0, 0)"

body.style.background.substr(this.length);

//    "gb(0, 0, 0)"

这里面的this到底指向了哪个东西? 单独log出来找不到相关length为1的对象啊?


PS: 原本打算简化相应的代码, substr用来过滤px|vh等单位


BIG阳
浏览 423回答 1
1回答

茅侃侃

函数直接调用,this指向undefined。 作为对象调用时,this指向该对象。 非严格模式下,this指向undefined时,会自动改为指向window。 你代码这里是直接调用this,且为非严格模式,所以指向的是window. 你可以自己console.log(this)查看啊
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript