ES6 Array

类数组、可遍历 对象(arguments selector返回的对象)转成数组

let arrayLike = {
    '0': 'a',
    '1': 'b',
    '2': 'c',
    '3': 'd',
    length: 4  
};

Array.from()
let arr1 = Array.from(arrayLike); // ['a', 'b', 'c']

Array.from()

var arr2 = Array.from([1, 2, 3], (x)=>x*x)  //  [1,4,9]
// 等同于Array.from(arrayLike).map(x => x * x);

Array.of()

var arr3 = Array.of(3, 11, 8)   // [3,11,8]
var arr4 = Array.of(3)          // [3]
var arr5 = Array.of(3).length   // 1

Array.copyWithin()

// [].copyWithin() 1是截取段的起始位置,4-6是截取区间
var arr6 = [33, 44, 55, 66, 77, 88].copyWithin(1, 4, 6) //[33,77,88,66,77,88],会改变原数组

Array.find()

var arr7 = [1, 5, 10, 15].find(function(value, index, arr) {
  return value > 9;
}) // 10,没有就返回underfined

Array.findIndex()

var arr8 = [1, 5, 10, 15].findIndex(function(value, index, arr) {
  return value > 119;
}) // 2,没有就返回-1
var index = [NaN].findIndex(y => Object.is(NaN, y)) //0

遍历keys values entries

for( let index of ["L", "X", "D", "Y"].keys()){
    //console.log( index )
}

for( let value of ["L", "X", "D", "Y"].values()){
    //console.log( value )
}

for( let [index, value] of ["L", "X", "D", "Y"].entries()){
    //console.log( index +" : "+value )
}

array.includes()

//array.includes(),第二个参数表示起始位置
[1, 2, 3].includes(2);     // true
[1, 2, 3].includes(4);     // false
[1, 2, NaN].includes(NaN); // true
[1, 2, 3].includes(3, 3);  // false
[1, 2, 3].includes(3, -1); // true

array.forEach()

// forEach方法
[,'z'].forEach((x,i) => console.log(x)); // z

array.filter

// filter方法
var arr10 = ['a',,'b'].filter(x => true) // ['a','b']
console.log(arr10)

array.every

// every方法
var arr11 = [,'a'].every(x => x==='a') // true
console.log(arr11)

array.some

// some方法
var arr12 = [,'a'].some(x => x !== 'a') // false
console.log(arr12)

array.map

// map方法
var arr13 = [,'a'].map(x => 1) // [,1]
console.log(arr13)

array.join

// join方法
var arr14 = [,'a',undefined,null].join('#') // "#a##"
console.log(arr14)

array.toString

// toString方法
var arr15 = [,'a',undefined,null].toString() // ",a,,"
console.log(arr15)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 数组的扩展--转自:阮一峰《ECMAScript 6 入门》 Array.from( Array.from方法用于...
    呼呼哥阅读 615评论 0 0
  • 1.Array.from Array.from方法用于将两类对象转为真正的数组:类似数组的对象(array-lik...
    赵然228阅读 677评论 0 0
  • 在日常编程过程中,我们总要对数组进行操作。然而使用最原始的js代码效率很低,而ES6提供了很多方法,极大的提高了我...
    小焲阅读 1,679评论 1 0
  • 三,字符串扩展 3.1 Unicode表示法 ES6 做出了改进,只要将码点放入大括号,就能正确解读该字符。有了这...
    eastbaby阅读 1,572评论 0 8
  • 还好林绵绵看不到,林岳这个大灯泡杵在许若年的背后看着这俩上演琼瑶剧,简直觉得有趣极了,看来自己之前太小心翼翼,根本...
    米来Mina阅读 366评论 8 3