1. 表达式的值相同 :
object.property
object["property"]
2. 在通过方括号([ ])这种数组表示法访问对象属性时,属性名是通过字符串来表示的。字符串是一种JavaScript数组类型,因此可以在程序运行期间修改和创建。
let addr = "";
for(let i = 0; i < 4; i++){
addr +=customer[`address${i}`] + "\n";
}
这段代码读取并拼接了customer对象的属性address0、 address1、address2和address3。
3. 这个程序可能包含一个函数,用于为投资组合(portfolio)添加新股票:
function addstock(portfolio,stockname,shares){
portfolio[stockname] = shares;
}
由于用户是在运行时输入股票名字,不可能提前知道属性名。没办法使用.操作符访问portfolio对象的属性。可以使用[ ]操作符,因为它使用字符串值(字符串是动态的,可以在运行时修改)而不是标识符(标识符是静态的,必须硬编码到程序中)来命名属性。
function computeValue(portfolio){
let total = 0.0;
for(let stock in portfolio){
let shares = portfolio[stock];
let price = getQuote(stock);
total += share * price;
}
return total;
}