关于数组的"[]"当中的参数问题

displayAbbreviation(){

var abbreviations = document.getElementsByTagName("abbr");

if (abbreviations.length < 1) return false;

var defs = new Array();

for (var i = 0; i<abbreviations.length; i++) {

var current_abbr = abbreviations[i];

var definition = current_abbr.getAttribute("title");

var key = current_abbr.lastChild.nodeValue;

defs[key] = definition;

}

}

displayAbbreviation() 函数中的最后一行“defs[key] = definition”不太明白,defs的中括号中的参数不应该是数字吗?而key返回的是一段文本吧? js小白一枚,求详解。

Gnayoul
浏览 1579回答 4
4回答

信念意志

数组[下标]=值,就相当于数组.元素=值,[] 相当于 .的作用,比如:style[元素]=值,因为style本身是一个数组对象,他可以以 . 形式 访问,也可以用 [下标]  形式访问。另外,为什么用 [下标] 形式,还有一个原因,你在编写js的时候,传参的时候,用 style.参数=值,会报错,所以用style[参数]=值,不会报错,仅此而已。

随遇而安丨

这是js不是c js的数组键值是可以用字符串的  可以称为关联索引  数字的话可以称为数字索引

微积分2016

[ ] 有时候可以替代 "." 操作符
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript