普歌-飞灵团队-ES6总结(一)

一.为什么使用ES6?

1.变量提升特性,增加了程序运行时的不可预测性。
2.语法过于松散,实现相同的功能,不同的人可能会写出不同的代码。

二.内置对象扩展

1.Array的扩展方法
(1)扩展运算符(展开语法)

  • 扩展运算符可以将数组或者对象转为用逗号分隔的参数序列
let arr = [1,2,3];
...arr  //1,2,3
console.log(...arr);  //1 2 3
console.log(1,2,3); 
  • 扩展运算符可以应用于合并数组。
//方法一
let arr = [1,2,3];
let arr2 = [4,5,6];
let arr3 = [...arr,...arr2];  
//方法二
arr.push(...arr2);

(2)构造函数方法:Array.form()

  • 将类数组或可遍历对象转化为真正的数组。
let array = {
     '0' : 'a',
     '1' : 'b',
     '2' : 'c',
     length:3
};
let arr = Array.form(array);  //['a','b','c']
  • 方法还可以接受第二个参数作用类似于数组的map方法,用来对每个元素进行处理,将处理后的值放入返回的数组。
let array = {
     '0' : 1,
     '1' :2,
     'length':3
};
let newArr = Array.form(array,item = > item * 2);

(3) 实例方法:find()
用于找到第一个符合条件的数组成员。如果没有找到返回undefined。

let arr = [{
     id:1,
     name:'Bob'
     },
     {
     id:2,
     name:'ava'
}];
let target = arr.find((item,index) => item.id == 2);

(4)实例方法:findIndex()
用于找到第一个符合条件的数组成员的位置,如果没有找到返回-1。

let arr = [10,22,5,9];
let index = arr.findIndex((value,index) => value > 9);

(5)实例方法:includes()
表示某个数组是否包含给定的值,返回布尔值。

[1,2,3].includes(2);  //true
[1,2,3].includes(5);  //false

2.String的扩展方法
(1)模板字符串

  • 模板字符串中可以解析变量。
 let name = 'LiHua';
 let sayHello = `hello ,my name is ${name}`;  //hello ,my name is LiHua
  • 模板字符串可以换行。
let res = {
    name : 'LiHua',
    age : 20,
    sex : '女'
}
let html = `
    <div>
       <span>${res.name}</span>   
       <span>${res.age}</span>
       <span>${res.sex}</span>
    </div>
`;
  • 在模板字符串中可以调用函数。
const sayHello = function () {
      return 'hello,';   
};
let res = `${sayHello()} world`;
console.log(res);  //hello,world

(2)实例方法:startsWith() 和 endsWith()
startsWith():表示参数字符串是否在原字符串的头部,返回布尔值。
endsWith():表示参数字符串是否在原字符串的尾部,返回布尔值。

let str = 'hello world!';
str.startsWith('hello');  //true
str.endsWith('world');  //false

(3)实例方法:repeat()
repeat方法表示将原字符串重复n次,返回一个新字符串。

'X'.repeat(3);  //XXX
'Hi'.repeat(2);  //HiHi

3.Set数据结构
ES6提供了新的数据结构Set,它类似于数组,但是成员的值都是唯一的,没有重复的值。

  • Set本身是一个构造函数,用来生成Set数据结构。
const s = new Set();
  • Set函数可以接受一个数组作为参数,用来初始化。
const set = new Set([1,2,3,4]);

(1)实例方法

  • add(value):添加某个值返回Set结构本身。
  • delete(value):删除某个值,返回一个布尔值,表示删除是否成功。
  • has(value):返回一个布尔值,表示该值是否为Set的成员。
  • clear():清除所有成员,没有返回值。
const s = new Set();
s.add(1).add(2).add(3);  //向Set结构中添加值。
s.delete(2);  //删除Set结构中的2值。
s.has(1);  //表示Set结构中是否有1这个值,返回布尔值。
s.clear();  //清除Set结构中的所有值。

(2)遍历
Set结构的实力与数组一样,也拥有forEach()方法,用于对每个成员执行某种操作,没有返回值。

s.forEach(value => console.log(value));

———————————————————————————————————————
作者:wx_mz
出处/源自:wx_mz的《普歌-飞灵团队-ES6总结(一)》
本文版权归作者和CSDN共有,欢迎转载,且在文章页面明显位置给出原文链接,未经作者同意必须保留此段声明,否则保留追究法律责任的权利。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值