(精華)2020年7月3日 JavaScript高階篇 ES6(物件的擴充套件方法)
屬性的簡寫
const a = 'a';
const obj = {a}
// const obj = {a:a}
console.log(obj);
方法的簡寫
const o = {
say(){
return '我是chris'
}
}
console.log(o.say());
// 誰用我我就指向誰
var name = '全域性'
const person = {
name:'張三',
say(){
console.log(`我的名字是${this.name}`);
}
}
person.say()
let res = person.say; // 全域性
res()
屬性名錶達式
let obj1 = {
// 讓屬性和變數掛鉤
[key]:true,
['o'+'b']:123,
[`ok`]:456
}
console.log(obj1);
super 關鍵字
const proto = {
foo:'土豆'
}
const oProto = {
foo:'蕃茄',
find(){
return super.foo
}
}
// proto 是 oProto的原型
Object.setPrototypeOf(oProto,proto) // __proto__
console.log(oProto.find()); //
const oProto = {
foo:super.foo
}
物件的擴充套件運算子 …
打包
// 打包
let {x,y:y,...z} = {x:1,y:2,a:3,b:4}
console.log(z);
//等號的右邊必須是一個物件
let {...h} = undefined
let {...v} = null
//陣列的解構賦值 ... 有一個注意點 是...的位置
let {...z,x,y} = {x:1,y:2,a:3,b:4}
拆包
// 複製 淺拷貝 深拷貝
// 陣列的淺拷貝es5 用到的是什麼 concat
// 物件的擴充套件運算子 ...也是淺拷貝
// 複製
let obj = {a:1}
let obj1 = obj;
obj1.a = 2;
console.log(obj);
// 淺拷貝
let obj2 = {...obj}
obj2.a = 2;
console.log(obj);
// es5 實現淺拷貝 類比concat
let person = {name:'張三',age:12}
let person2 = Object.assign({},person)
person2.name = '王五'
console.log(person);
let {a,b,...z} = {c:1,b:2,a:3,d:4}
console.log(z);
// 不是深拷貝
let obj = {a:{b:1}}
let obj1 = {...obj}
obj1.a.b =2;
console.log(obj);
相關文章
- (精華)2020年7月3日 JavaScript高階篇 ES6(陣列的擴充套件方法)JavaScript陣列套件
- (精華)2020年7月5日 JavaScript高階篇 ES6(Promise)JavaScriptPromise
- JavaScript String 物件擴充套件方法JavaScript物件套件
- ES6 物件的擴充套件物件套件
- ES6物件的擴充套件及新增方法。物件套件
- (精華)2020年7月3日 JavaScript高階篇 ES6(Map資料結構)JavaScript資料結構
- 擴充套件javascript原生物件套件JavaScript物件
- c# 高階應用 理解擴充套件方法C#套件
- es6 陣列擴充套件方法陣列套件
- JavaScript 原生物件及擴充套件JavaScript物件套件
- (精華)2020年6月26日 C#類庫 Enum(擴充套件方法)C#套件
- (精華)2020年6月26日 C#類庫 DataTable(擴充套件方法)C#套件
- 重讀 ES6 — 陣列、物件的擴充套件陣列物件套件
- 【譯】提高 JavaScript 開發效率的高階 VSCode 擴充套件!JavaScriptVSCode套件
- ES6 -- String 擴充套件方法解析套件
- 擴充套件篇套件
- es6 字串的擴充套件字串套件
- 《深入理解ES6》4.擴充套件的物件功能套件物件
- Kotlin委託 & 擴充套件 & 高階函式Kotlin套件函式
- ES6之字串擴充套件字串套件
- ES6數字擴充套件套件
- ES6之陣列的擴充套件陣列套件
- ES6之正則的擴充套件套件
- ES6之函式的擴充套件函式套件
- ES6字串的擴充套件字串套件
- C#中的this擴充套件方法與javascript中的prototype方法C#套件JavaScript
- JavaScript 擴充套件運算子JavaScript套件
- 關於一些nginx的高階擴充套件應用Nginx套件
- 使用高階函式實現類的擴充套件設計函式套件
- es6-物件擴充套件物件套件
- 《深入理解ES6》筆記——擴充套件物件的功能性(4)筆記套件物件
- ES6入門之字串的擴充套件字串套件
- es6陣列擴充套件的學習陣列套件
- 關於一些nginx的高階擴充套件應用薦Nginx套件
- Json擴充套件方法JSON套件
- LINQ擴充套件方法套件
- ES6各大資料型別的擴充套件大資料資料型別套件
- ES6入門之陣列的擴充套件陣列套件