1.let const 声明变量
let i = 1; //不可重复声明,不变量提升
const j = 100; //只读
var k = 20;
console.log(i,j,k)
2.对象优化
let person = {id:1,name:'jack'}
let peson2 = Object.assign(person)
console.log(person,peson2)//{ id: 1, name: 'jack' } { id: 1, name: 'jack' }
person.id=10 //浅复制,会更新
console.log(person,peson2)//{ id: 10, name: 'jack' } { id: 10, name: 'jack' }
let person = {id:1,name:'jack'}
let person2 = {...person}
console.log(person,person2) //{ id: 1, name: 'jack' } { id: 1, name: 'jack' }
person.id=20 //深复制,不会更新
console.log(person,person2) //{ id: 20, name: 'jack' } { id: 1, name: 'jack' }
let t = {age:20}
let person3 = {...person,t} //合并对象
console.log(person3)//{ id: 20, name: 'jack', t: { age: 20 } }
let show = function (i) {
console.log(i)
}
show(100); // 100
let show2 = (i)=>{console.log(i)} //箭头函数
show2(200); // 200
let show3 = (...i)=>{
console.log(i)
i.map((item)=>{ console.log(item)})
}
show3(1,10); // [ 1, 10 ]
show3(); // []
3.模块化:export import
let add = function (i, j) {
return i + j;
}
let person = {
id: 1,
name: 'jack'
}
export {
person,
add
}
import {add,person} from './add.js'
let sum = add(10, 50)
console.log(person,sum)
4.字符串
let s1 = 'hello,world';
//传统字符串叠加
let s2 = "111" +
"aaa" +
"bbb"
//模板,换行符合,都在字符串内
let s3 = `11
aa
bb`
let s4 = `${s1} 你好` //字符串模板,格式:${}
console.log(s1,s2,s3,s4)
console.log(s1.startsWith("hello")) //true
console.log(s1.startsWith("1hello")) //false
console.log(s1.endsWith("world"))//true
console.log(s1.endsWith("world2"))//false
console.log(s1.includes("world"))//true