(59)Wangdao.com第十天_JavaScript 对象在 栈和堆

对象的属性值

  • 如果要使用特殊的属性名,需
    • 对象["属性名"] = 属性值       // 存
    • 对象["属性名"]       // 取
  • obj["123"] = 456;
    var n = "123";
    
    // 可以传一个变量到 [] ,来取变量对应在 Object 中的属性值
    console.log(obj[n]);
  • 对象的属性值可以是任意数据类型,包括对象和函数。
  • 使用 in 运算符来检查一个对象是否含有某属性
    • console.log("123" in  obj);    // true
  • 变量和基本类型保存在栈内存中,运用 "=" 时,会将变量值也在栈内存中复制一份,彼此独立不相互影响。
  • 而每次 new Object() 都会在堆内存中开辟一片空间来保存对象,当使用 "=" 时,只是保存了指向这片堆内存的地址而已,所以两个变量操作一个对象,彼此影响。

 

--------小尾巴 ________一个人欣赏-最后一朵颜色的消逝-忠诚于我的是·一颗叫做野的心.决不受人奴役.怒火中生的那一刻·终将结束...
原文地址:https://www.cnblogs.com/tianxiaxuange/p/9697727.html