對象屬性的簡寫
當對象的屬性名和變量名一樣時,可以簡寫肢预。如
var x = 3
var y = 4
{x, y} // 相當于 {x:3, y:4}
對象方法的簡寫
const o = {
method() {
return "Hello!";
}
};
// 等同于
const o = {
method: function() {
return "Hello!";
}
};
Object.assign()
Object.assign
方法用于對象的合并琅坡,將源對象(source)的所有可枚舉屬性兆衅,復制到目標對象(target)。
我們寫組件的時候攀例,一般都會這么寫
var settings = Object.assign({}, defaultSettings, userSettings)
注意:Object.assign方法實行的是淺拷貝船逮,而不是深拷貝顾腊。也就是說,如果源對象某個屬性的值是對象挖胃,那么目標對象拷貝得到的是這個對象的引用杂靶。
Object.is()
Object.is
方法用來判斷兩個值是否相等,和 ===
類似酱鸭,比較時不會進行類型轉換吗垮。不同點是
+0 === -0 //true
NaN === NaN // false
Object.is(+0, -0) // false
Object.is(NaN, NaN) // true
所以用 Object.is 來判斷兩個值是否相等比用 ===
更靠譜。