JS题库链接
一个很好练js基础的网站
97.this
V
const obj = {
prefix: 'BFE',
list: ['1', '2', '3'],
log() {
this.list.forEach(function (item) {
console.log(this.prefix + item);
});
},
};
obj.log();
// "undefined1"
// "undefined2"
// "undefined3"
这里,log函数里面的这个会指向obj,因为它是一个普通函数。因此,this.list.forEach循环遍历数组['1','2','3']。
然而,在forEach回调函数内部,因为它不是调用callback的obj,所以它不会指向obj。相反,它指的是窗口。前缀没有定义,forEach中传的第二个参数是this指向的
96.comparison
console.log(10 > 9) // true
console.log(10 > '9') // true
console.log('10' > 9) // true
console.log('10' > '9') // false
当使用在要比较两个操作数,如果其中一个操作数是数字,Javascript