this指向问题
在JavaScript中,this的指向是一个复杂但非常重要的概念,它决定了函数执行时上下文(context)的引用。this的指向并不是在函数定义时确定的,而是在函数被调用时根据调用函数的方式来决定的。理解this的指向对于编写高质量的JavaScript代码至关重要。
1.全局环境下的this
function fun(){
console.log(this);
}
window.fun();
我们可以看到,全局环境下,this指向的是全局window对象
2.在对象中使用this
let obj={
uname:"观云",
age:30,
fun:function(){
console.log("this",this);
}
}
obj.fun();
在某个对象中定义函数,再去调用,并且观察发现此时this指向的该对象。
3.箭头函数中的this
let obj={
uname:"观云",
age:30,
fun:function(){
console.log("this",this);
}
}
obj.fun();
我们可以看到,修改了函数的写法,从原来的普通函数换为箭头函数,此时this指向变为了window。
注意:
在Vue框架中,我们使用箭头函数的目的是保证我们的this指向保持不变,始终指向Vue实例对象。
JavaScript中的Filter方法
在JavaScript中,filter() 方法是一个非常有用的数组方法,它用于创建一个新数组,这个新数组包含通过所提供函数实现的测试的所有元素。总而言之,filter方法可以理解为是自定义方法过滤数组的每个元素。
示例:
//过滤出数组中比5大的元素
let nums=[1,2,3,4,5,6,7,8,9];
let res=nums.filter((num)=>{
return num>5
})
console.log(res);
结果如下:
我们可以观察到,控制台打印出了数组中比5大的元素。