JavaScript中的对象可以通过点(.)方式和方括号([])运算符来获得属性的值。
运算符的左侧应当是一个表达式它返回一个对象。
对于点(.)来说右侧必须是一个以属性命名的简单标识符。对于方括号来说([]),右侧必须是一个以计算结果为字符串的表达式,而这个表达式必须是一个结果为字符串,这个字符串就是属性名。
- 在ECMAscript 3中,点运算符后的标识符不能是保留字。如果是保留字的话必须用方括号来访问。
- 当标识符中有空格时只能通过方括号来访问。
book["main title"]
o["for"]
点运算符(.)访问对象属性时,属性名用一个标识符来表示。标识符必须出现在JavaScript程序中,他们不是数据类型,因此程序无法修改它们。
方括号运算符([])在访问对象属性时,属性名通过字符串来表示。字符串是JavaScript的数据类型,在程序运行时可以创建修改它们。
function addstock(portfolio, stockname, shares){
portfolio[stockname] = shares;
}
创建新的属性并保存值。
function getvalue(protfolio){
var total = 0.0;
for (stock in portfolio) {
var shares = portfolio[stock];
var price = getquote(stock); //查找股票价格
total += shares * price;
}
return total;
}