这次给大家带来es6里新的数组api详解,使用es6里新的数组api的注意事项有哪些,下面就是实战案例,一起来看一下。
// 标准数组json格式;
var json = {
"0": "liuliu",
"1": 24,
"2": true,
"length": 3
};
var arr = array.from(json);
console.log(arr);
//array.of(); 说白了其实是一种构造数组的方式;
array(1, 2, 3, 5); //[1,2,3,5]
array.of(1, 2, 3, 5); //[1,2,3,5]
//array(1,2,3,5); 没见过 no. new array(1,2,3,5)见过吧;new可以省略;参照犀牛书;
//区别:
array.of(3); //[3]
array(3); //[,,];
var arr0 = array.of(1, 2, 3, 4);
console.log(typeof arr0);
console.log(arr0);
console.log(array(1, 2, 3));
console.log("---------------------");
//.find()方法.实例方法; //val:值,key:索引,arr:实例本身
var arr00 = ["liuhf", 1, 4, 5];
var arr_00 = arr00.find(function(val, key, arr) {
return key == 0; //相当于筛选;
});
console.log(typeof arr_00);
console.log(arr_00);
console.log(arr00); //不会改变原数组;
// 数组实例的fill方法; babel无法转换 ie11暂时也无法支撑;
var liu = ["liu", "hai", "oo"];
liu.fill("李", 1, 2); //1,表示替换在liu[1]的位置(起始位置) 2,表示结束位置liu[2],但是不包括2;
console.log(liu); //[ 'liu', '李', 'oo' ]
//数组遍历新方法: for of
//输出值;
for (let item of liu) {
console.log(item);
}
console.log("##############");
//输出索引;
for (let keys of liu.keys()) {
console.log(keys);
}
console.log("##############");
//输出值跟索引: entries() ie11没办法支持[babel也转化后也不支持(主要有个symbol)];edge浏览器可以支持(win10测试;)
for (let [val, key] of liu.entries()) {
console.log(val + ":" + key);
}
console.log("##############");
console.log(liu.entries()); //chrome下为 array iterator {}; edge下为 普通object object{}
console.log(liu.entries().length); //undefined //不能理解啊,数组没有长度.
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
相关阅读:
es6里关于数字新增判断详解
es6的字符串模板详解
es6的拓展运算符详解
以上就是es6里新的数组api详解的详细内容。