//1.let与var的区别:
//let 局部作用域,不会变量提升,只能声明一次
//var 越作用域,变量提升,可声明多次
//2.扩展运算符,可以扩展对象,数组,函数为参数则转数组,深拷贝
let demo1=['1','2','3']
console.log(demo1) //['1','2','3']
console.log(...demo1) //1 2 3
let demo2=['2','3']
const demo3=[demo1,demo2] // [Array(3), Array(2)]
const demo4=[...demo1,...demo2] // ["1", "2", "3", "2", "3"]
console.log(demo3)
console.log(demo4)
// ... 放到函数里 传进来就是数组
function test(a, ...value){
console.log(value) // [...]
}
test(1,123)
// 3.startsWith 与 endsWith
let str = "abcdefg"
console.log(str.startsWith("abc")) // 检测开始字符
console.log(str.endsWith("abc")) // 检测末尾字符
// 4.结构表达式
let arr = [{a:1},[1,2],3]; //普通写法不能单独取里面数据,结构可以实现
let [d1,d2] = arr; // 数组结构只能结构对应数组结构带[]输出
console.log(d1,d2)//1 2 3
console.log([d1,d2])
// 5.解构
const obj = {
o1:"aa",
o2:"bb",
o3:[1,2,3]
}
const {name:o1,o2,o3} = obj; // 可以替换变量名name 替换 n ,替换名称只有对象写法才行
console.log(name,o2,o3)
// 6.箭头函数+解构
const data = {
name1:1,
name2:2,
}
var printName = ({name1}) => console.log(name1) // 单独的可以取出name1
printName(data)
// 7.字符串模板 使用英文引号不是字符串单号。 引号加 ${},可以写变量或函数,换行,空格都可以输出,输出html需要加v-html--------------------
let number = 123
function funTest(){
return 123
}
let str1 = `
a=${a + 1}
${funTest()}
c
`
let str2 = `${number*1}${funTest()}<div style="font-size:30px">123</div>`
this.data = str2;
console.log(str1)
console.log(str2)
// 8.函数优化---------------------------------------------------
function funTest(a,b=1){ // 加等号,可以有默认值,比以前没传参数进来容易出错些
return a + b;
}
console.log(funTest(3))//4
简单示例来浅谈一下常用的 es6写法,让写代码丝滑点
最新推荐文章于 2024-08-12 15:49:19 发布