js对象属性 通过点(.) 和 方括号([]) 的不同之处

来源:互联网 发布:塑料蒸锅有毒吗 知乎 编辑:程序博客网 时间:2024/05/16 07:20
【JS对象属性的查询和设置】
可以通过点(.) 或 方括号([]) 运算符来获取属性的值。运算符左侧应当是一个表达式,它返回一个对象。对于点(.)来说,右侧必须是一个以属性名称命名的简单标识符。对于方括号([])来说,方括号里必须是一个计算结果为字符串的表达式,这个字符串就是属性的名字:
<script type="text/javascript">
  var author = book.author; //得到book的"author"属性
  var name = author.subname; //得到author的"surname"属性
  var title = book["main title"]; //得到book的"main title"属性
</script>


当通过点运算符(.)方法对象属性时,属性名用一个标识符来表示。标识符必须直接出现再js程序中,它们不是数据类型,因此程序无法修改它们。
反过来讲,当通过[]来方式对象的属性时,属性名通过字符串表示。字符串是js的数据类型,再程序运行时可以修改和创建它们。
<script type="text/javascript">
  var addr = "";
  for(i=0;i<4;i++){
    addr += cutomer["address" + i] + "\n";
  }
</script>
这段代码读取customer对象的address0,adddress1,address2,adddress3属性,并将他们连接起来。
0 0