JS:类数组对象如何转化为数组(*****五颗星)
1.类数组对象
一个拥有 length 属性和若干索引属性的对象就可以被称为类数组对象,类数组对象和数组类似,但是不能调用数组的方法。
常见的类数组对象有 arguments 和 DOM 方法的返回结果,函数参数也可以被看作是类数组对象,因为它含有 length属性值,代表可接收的参数个数。
1.类数组对象: arguments
<script> function sum(a,b){ console.log(arguments) } sum(1,2) </script>
2.类数组对象:DOM 方法的返回结果
<div class="Div"></div> <div class="Div"></div> <div class="Div"></div> <script> let arrayLike=document.getElementsByClassName("Div") console.log(arrayLike) </script>
2.常见的类数组转换为数组的方法有这样几种:
1.通过 call /apply调用数组的 slice 方法来实现转换
Array.prototype.slice.call(arrayLike);
<div class="Div"></div> <div class="Div"></div> <div class="Div"></div> <script> let arrayLike=document.getElementsByClassName("Div") let arr=Array.prototype.slice.call(arrayLike) //let arr=Array.prototype.slice.apply(arrayLike)//也可以 console.log(arrayLike) console.log(arr) </script>
2.通过 call /apply调用数组的 splice 方法来实现转换
Array.prototype.splice.call(arrayLike, 0);
此方法
剩余60%内容,订阅专栏后可继续查看/也可单篇购买
前端面试题 文章被收录于专栏
前端面试的一些常问问题、问题的具体实现(可直接运行)以及底层原理