当前位置: 代码迷 >> 综合 >> ES6——数组(entries、for...of、fill、find、Array.of、Array.from)
  详细解决方案

ES6——数组(entries、for...of、fill、find、Array.of、Array.from)

热度:0   发布时间:2023-12-15 04:40:04.0

entries

返回一个数组的迭代对象,该对象包含数组的键值对 (key/value)。

迭代对象中数组的索引值作为 key, 数组元素作为 value。

        let arr = ['jie','biao','nine'];let list = arr.entries();console.log(list.next().value) // [0,'jie']console.log(list.next().value) // [1,'biao']console.log(list.next().value) // [2,'nine']

for...of

for...in循环出的是key值,for...of循环出的是value值
推荐在循环对象属性的时候,使用for...in,在遍历数组的时候的时候使用for...of
for...of不能循环普通的对象,需要通过和Object.keys()搭配使用

     let arr = ['jie','biao','nine'];for(let item of arr){console.log(item)} //jie biao nine 
        let arr = ['jie','biao','nine'];for(let index of arr.keys()){console.log(index)}//0 1 2
         let arr = ['jie','biao','nine'];for(let [index,val] of arr.entries()){console.log(index + ':' + val)}0:jie 1:biao 2:nine

fill( )填充

它接收三个参数,
1.第一个参数是填充的变量
2.第二个是开始填充的位置
3.第三个是填充到的位置

let arr = [0,1,2,3,4,5,6,7,8,9];
arr.fill('jie',2,5)
console.log(arr) //(10) [0, 1, "jie", "jie", "jie", 5, 6, 7, 8, 9]

find

找到第一个符合条件的 item
函数需要传入三个参数:

1.value:表示当前查找的值。
2.index:表示当前查找的数组索引。
3.arr:表示当前数组。

        let arr = [1, 2, 3, 4, 5, 6];let arr2 = arr.find(function(value,index,arr){return value >2;})console.log(arr2) //3//没有则underfind

文本或者变量转换成数组Array.of()

        let arr = Array.of(3,4,5,6);console.log(arr) //(4) [3, 4, 5, 6]
        let arr = Array.of('jie','biao','nine');console.log(arr) //(3) ["jie", "biao", "nine"]

JSON数组格式转换Array.from()

在最后多了一个length属性

       let json = {'0':'jie','1':'杰','2':'biao',length:3  //一定要加这个属性}let arr = Array.from(json)console.log(arr) //(3) ["jie", "杰", "biao"]
        let json = {'0':'jie','1':'杰','2':'biao',}let arr = Array.from(json)console.log(arr)  //[]
  相关解决方案