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