js中什么是伪数组,怎么将伪数组转化为标准数组?

伪数组就是:具有0到length-1的属性,并有length属性

一般获取到的DOM元素或者jQuery获取到的元素都是伪数组。

伪数组:
在这里插入图片描述
将伪数组转化为标准数组需要用到数组原型中的方法 slice

 //需要使用到call方法,因为lis并没有该方法,需要使用call来借调
 console.log(Array.prototype.slice.call(lis));

补充:
函数的方法call、apply、bind

如果不需要关心具体有多少参数被传入函数,选用apply();

如果确定函数可接收多少个参数,并且想一目了然表达形参和实参的对应关系,用call();

如果我们想要将来再调用方法,不需立即得到函数返回结果,则使用bind();

总结:
call()、apply()和bind()都是用来改变函数执行时的上下文,可借助它们实现继承;
call()和apply()唯一区别是参数不一样,call()是apply()的语法糖;
bind()是返回一个新函数,供以后调用,而apply()和call()是立即调用。

发布了106 篇原创文章 · 获赞 46 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/zlq_CSDN/article/details/91126547
今日推荐