携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第17天点击查看活动详情。
ES9
Rest 参数与spread 扩展运算符在ES6已经引入,不过ES6中只针对数组
在 ES9 中为对象提供了像数组一样的rest参数 和 扩展运算符
reset 获取函数未定义的多余参数
// reset 获取函数未定义的多余参数
function connect({host,port,...user}) {
console.log(host)
console.log(port)
console.log(user)
// console.log(password)
}
connect({
host: '127.0.0.1', port: 3306, usename: 'admin', password: 'admin', type: 'mater'
})
const skllOne = {
Q: "天音波/回音击",
}
const skllTwo = {
W: "金钟罩/铁布衫",
}
const sklThree = {
E: "疾风骤雨",
}
const sklFour = {
R: "猛龙摆尾",
}
//扩展运算符
const mangseng = {
...skllOne, ...skllTwo, ...sklThree, ...sklFour
}
console.log(mangseng)
正则表达式
正则表达式字面量,由包含在斜杠之间的模式组成: /ab+c/
// 声明一个字符串
let str = '<a href="http://www.baidu.com">百度</a>'
// 提取 URL 与 标签文本
const reg = /<a href="(.*)">(.*)</a>/;
// 执行
const result = reg.exec(str);
console.log(result[1])
console.log(result[2])
const reg2 = /<a href="(?<url>.*)">(?<text>.*)</a>/;
const result1 = reg2.exec(str)
console.log(result1)
正则表达式扩展 —— 断言:断言的组成之一是边界。对于文本、词或者模式,,边界可以用来表明它们的起始或终止部分(如向前断言,向后断言以及条件表达式)。
边界类断言:
^:匹配输入的开头$:匹配输入的结束\b: 匹配一个单词的边界,一个字的字符前后没有另一个字的字符位置, 例如在字母和空格之间。\B:匹配非单词边界。是上一个字符和下一个字符属于同一类型的位置:要么两者都必须是单词,要么两者都必须是非单词
其他断言:
?字符也可用作量词 x(?=y) ”- 向前断言: x 被 y 跟随时匹配 x (?<=y)x
- 向后断言: x 跟随 y 的情况下匹配 x。
/ 声明字符串
let str = 'jifsdfs3234fsdlllf饭34发44啦啦啦';
// 正向断言
const reg = /\d+(?=啦)/;
const result = reg.exec(str);
console.log(result)
// 反向断言
const reg1 = /(?=饭)d+/;
const result1 = reg.exec(str)
console.log(result1)
dot . 元字符 除换行符以外的任意单个字符