JavaScript的对象属性的两种访问方式

JavaScript中的对象可以通过点(.)方式和方括号([])运算符来获得属性的值。

运算符的左侧应当是一个表达式它返回一个对象。

对于点(.)来说右侧必须是一个以属性命名的简单标识符。对于方括号来说([]),右侧必须是一个以计算结果为字符串的表达式,而这个表达式必须是一个结果为字符串,这个字符串就是属性名。


  • 在ECMAscript 3中,点运算符后的标识符不能是保留字。如果是保留字的话必须用方括号来访问。
  • 当标识符中有空格时只能通过方括号来访问。
book["main title"]
o["for"]

JavaScript是弱类型语言,在任何对象中都可以创建任意数量的属性。

点运算符(.)访问对象属性时,属性名用一个标识符来表示。标识符必须出现在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;
}

你可能感兴趣的:(JavaScript,javascript,对象)