深入理解ES6之《ES6中較小的改動》

2021-09-16 12:36:01 字數 1612 閱讀 8601

console.log(number.isinteger(25))//true

console.log(number.isinteger(25.0))//true

console.log(number.isinteger(25.1))//false

ieee 754只能準確的表示-2的53次方到2的53次方的整數

let inside = number.max_safe_integer,

outside = number.max_safe_integer + 1

表示整數範圍的下限

console.log(number.isinteger(inside))//true

console.log(number.issafeinteger(inside))//true

console.log(number.isinteger(outside))//true

console.log(number.issafeinteger(outside))//false

可以將unicode轉義序列用作識別符號

let \u0061 = 'abc'

console.log(\u0061)//abc

console.log(a)//abc

可以使用unicode碼位轉義序列來作為識別符號

let \u = 'abc'

console.log(\u)//abc

console.log(a)//abc

只能在物件字面量中指定一次__proto__,如果指定兩個__prpto__屬性則會丟擲錯誤,這是唯一具有該限制的物件字面量改改

可計算形式的["__proto__"]的行為類似於普通屬性,不會設定或返回當前物件的原型。與物件字面量屬性相關的所有規則均適用於此形式,應用不可計算的形式則會丟擲異常

使用__proto__和使用object.getprototypeof或object.setprototypeof方法的區別在於__proto__可以直接設定物件字面量的原型

let person = 

}let dog =

}let friend =

console.log(friend.getgreeting())//hello

console.log(object.getprototypeof(friend) === person)//true

console.log(friend.__proto__ === person)//true

friend.__proto__ = dog

console.log(friend.getgreeting())//woof

console.log(object.getprototypeof(friend) === dog)//true

console.log(friend.__proto__ === dog)//true

沒有通過呼叫object.create方法來建立friend物件,而是建立乙個標準物件字面量,並將乙個值賦給__proto__屬性,換句話說,當使用object.create方法建立物件時,必須為所有其它物件屬性指定完整的屬性描述符

深入理解ES6之《解構》

如果使用var let const解析宣告變數,則必須提供初始化程式 也就是等號右側的值 以下語句有語法錯誤 var let const解構賦值表示式 也就是右側的表示式 如果為null或undefined會導致程式丟擲錯誤,因為任何嘗試讀取null或undefined的屬性的行為都會觸發執行時錯誤...

深入理解ES6 解構

解構時一種打破資料結構,將其拆分為更小部分的過程。解構在實際開發中經常會應用到物件和陣列中。關於解構的基本用法,請參考 es6 變數的宣告及解構賦值 const node let node 對已經宣告的變數賦值 const node let a,b node const obj let obj co...

深入理解es6的promise

一 promise入門 1.promise物件是什麼 函式的另一種原生實現,比之前 函式的寫法機構清晰,功能強大,2.以前 這麼寫 function a fn else 1000 呼叫a function m 3.用promise 寫 function a else 1000 呼叫a then fu...