ES6--数组--拓展运算符、 API拓展

拓展运算符

      ...用在=左边,聚合的作用(对象、数组的解构)
      ...用在=右边,展开(剥离)的作用
        let obj1 = {
          name: '张三'
        }
        let obj2 = {
          ...obj1,
          age: 12
        }

let arr1 = [1, 2, 3];
let arr2 = [4, 5, 6];

// 利用拓展运算符,将数组1,2合并到arr中
let arr = [...arr1, ...arr2];
// console.log(arr);

// 拓展运算符,放在等号右边,是展开(剥离)的作用
// 放在等号左边,是聚合的作用
// let obj1 = {
//   name: '张三',
//   age: 12
// }
// let obj2 = {
//   ...obj1,
//   gender: 'male',
//   hobby: '篮球'
// }
// console.log(obj2);

let arrStr = [...'hello'];
console.log(arrStr);

API拓展

      Array.from()  将其他类型属性转成数组
      Array.of()    创建数组实例,实参就是数组的元素
      Array.prototype.find() 返回满足条件的第一个元素
      Array.prototype.findIndex() 返回满足条件的第一个元素的索引
      Array.prototype.includes()  判断当前数组中是否包含某个元素
      Array.prototype.fill()      填充数组(左右元素填充)
      Array.prototype.keys()      索引的迭代器对象
      Array.prototype.values()    元素的迭代器对象
      Array.prototype.entries()   键值对的迭代器对象

// let arr1 = new Array('3')  // [1,2,3] [3]
// console.log(arr1);

let arr1 = Array.of(3, 3, 3, 3);
console.log(arr1);//[3,3,3,3,3]所见即所得
let arr1 = ['李四', '王五', '老六', '张三'];

// find方法返回满足条件的第一个元素
// let result = arr1.find(item => {
//   return item === '张三'
// })

// findIndex()返回满足条件的第一个元素的索引
// let result = arr1.findIndex(item => {
//   return item === '张三'
// })

// let result = arr1.includes('张三');

// fill填充数组,将数组内部所有元素都用实参填充
arr1.fill(1)
console.log(arr1);
let arr1 = ['张三', '李四', '王五', '老六'];

// 返回的是数组的迭代器对象,可用通过.next()访问内部的值
// { value: 0, done: false }
let key = arr1.keys();
let value = arr1.values();
let entry = arr1.entries();
console.log(key);  // [0,1,2,3]
console.log(value);
console.log(entry);

console.log(key.next());
console.log(key.next());
console.log(key.next());
console.log(key.next());
console.log(key.next());

结果:

Object [Array Iterator] {}
Object [Array Iterator] {}      
Object [Array Iterator] {}      
{ value: 0, done: false }       
{ value: 1, done: false }       
{ value: 2, done: false }       
{ value: 3, done: false }       
{ value: undefined, done: true }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值