ES6语法新特性(下)

7. set

Set 是 ES6 提供的一种数据结构,它和数组很像,但是它里面的数据是不可重复的。

7.1.1 初始化

const set1 = new Set([1, 2, 3, 4, 5, 5]);
const set2 = new Set(['苹果','橘子','橘子']);
console.log(set1);
console.log(set2);
/*
控制台输出:
{1,2,3,4,5}
{'苹果','橘子'}
*/

7.1.2 添加数据

const set = new Set([1, 2, 3, 4, 5,5]);
set.add(7);
console.log(set);
/*
控制台输出:
{1,2,3,4,5,6}
*/

7.1.3 删除数据

const set = new Set([1, 2, 3, 4, 5,5]);
set.delete(3);
console.log(set);
/*
控制台输出:
{1,2,4,5}
*/

7.1.4 包含数据

const set = new Set([1, 2, 3, 4, 5,5]);
const res = set.has(1);
console.log(res);
/*
控制台输出:
true
*/

7.1.5 清空集合set中的所有数据

const set = new Set([1, 2, 3, 4, 5,5]);
set.clear();

8.数组操作

8.1.1 合并数组

let u1 = ['张三', '李四', '王五'];
let u2 = ['张无忌', '赵敏', '周芷若'];
let u3 = [...u1,...u2];
console.log(u3);

/*
控制台输出:
['张三', '李四', '王五','张无忌', '赵敏', '周芷若']
*/

8.1.2 includes()

//includes 用来判断该数组是否包含某个值,返回值是布尔值
let users = ['张三','李四'];
let res = users.includes('张三');
console.log(res);
//控制台输出:true

8.1.3 find()

//find 用来找到第一个符合条件的成员,没有找到返回 undefined
let users = [{ name: '张三', age: 18 }, { name: '李四', age: 20 }];
let user = users.find((item, index) =>
    item.age > 18
)
console.log(user);
/*
控制台输出
{name:'李四',age:20}
*/

8.1.4 findIndex()

//findIndex 用来找到第一个符合条件的成员的索引,没有的话返回 -1
let users = [{ name: '张三', age: 18 }, { name: '李四', age: 20 }];
let index = users.findIndex((item, index) =>
    item.age > 18
)
console.log(index)
//控制台输出:1

8.1.5 filter()

//filter 用来返回一个满足条件的新数组,不满足条件返回空数组
let users = [{ name: '张三', age: 18 }, { name: '李四', age: 20 }];
let array = users.filter((item, index) =>
    item.age > 21
)
console.log(array);
//控制台输出:Array(0)

8.1.6 map()

//map 用来返回一个对成员进行加工之后的新数组
let users = [{ name: '张三', age: 18 }, { name: '李四', age: 20 }];
let array = users.map((item, index) => {
    item.name += "666";
    item.age += 10;
    return item;
})
console.log(array);
/*
控制台输出:
0:{name:'张三666',age:28}
1:{name:'李四666',age:30}
*/

9. 字符串扩展方法

模板字符串是 ES6 新增加的创建字符串的方式

9.1 startsWith() 和 endsWith()

9.1.1 startsWith()

//表示该字符串参数是否在某个字符串头部
let message = "helloworld";
let res = message.startsWith("hello");
console.log(res);
//控制台输出:true

9.1.2endsWith()

//表示该字符串参数是否在某个字符串尾部
let message = "helloworld";
let res = message.endsWith("ww");
console.log(res);
//控制台输出:false

9.2 模板字符串

9.2.1 定义

模板字符串是 ES6 新增加的创建字符串的方式

定义方式:反引号

 let country = `中国`;

9.2.2 解析变量

let country = `world`;
let message = `hello ${country}`;
console.log(message);
//控制台输出:hello world

9.2.3 调用函数

const print = message=>message+",2022-04-25";
let message = `${print('hello world!')}`;
console.log(message);
// 控制台输出: hello world! 2022-04-25
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星辰予曦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值