
JavaScript 物件
21
複合物件具有動態屬性
如果你將一個新變數指向既有的複合物件,JavaScript 不會複製該物件。因此複合物件有
時稱為參考物件。你可以如你所願地擁有許多指向同一個複合物件的參考,它們一定會參
考同一個物件,即使該物件有所改變亦然。
Live Code(http://jsfiddle. net/javascript enlightenment/ SSsVC/ )
<!DOCTYPE html><html lang="en"><body><script>
var objA = {property: 'value'};
var pointer1 = objA;
var pointer2 = pointer1;
// 更新 objA.property,所有的參考(pointer1 與 pointer2)都會更新
objA.property = null;
/* log 'null null null',因為 objA、pointer1 與 pointer2 都參考同一個物件 */
console.log(objA.property, pointer1.property, pointer2.property);
</script></body></html>
這種做法可以產生動態物件屬性,因為你可以定義一個物件,建立參考,更新物件,之後
所有參考到這個物件的變數都會「取得」最新的結果。
對原始與複合值使用 typeof 運算子
typeof
運算子可回傳值的類型,但是它回傳的值並