javascript中字符串向量映射的数组读取问题
我是JS的新手。这是我的代码,我相信它应该可以工作。。。但事实并非如此javascript中字符串向量映射的数组读取问题,javascript,Javascript,我是JS的新手。这是我的代码,我相信它应该可以工作。。。但事实并非如此 var pop = new Array(); pop['la'] = new Array('nt','gb','te'); pop['sa'] = new Array('nt','gb'); pop['ha'] = new Array('pc','pa'); var _ecpop="la"; for (var i = 0; i < pop[_ecpop].length; i++) { document.wri
var pop = new Array();
pop['la'] = new Array('nt','gb','te');
pop['sa'] = new Array('nt','gb');
pop['ha'] = new Array('pc','pa');
var _ecpop="la";
for (var i = 0; i < pop[_ecpop].length; i++)
{
document.write(pop[_ecpop][i]);
}
var pop=new Array();
pop['la']=新数组('nt','gb','te');
pop['sa']=新数组('nt','gb');
pop['ha']=新阵列('pc','pa');
var_ecpop=“la”;
对于(var i=0;i
我只是不知道有没有其他方法可以得到一个字符串向量的映射
谢谢
阿米尔。这不是一个数组,而是一个Javascript对象,它的属性中包含数组。您可以使用对象和数组来实现这一点。优点是您的代码看起来更干净。很少有理由在javascript代码中使用
新数组
或新对象
(参见示例)
现在你可以使用
for (var i = 0; i < pop.la.length; i++) {
console.log(pop.la[i]);
}
document.write
不是将内容放在页面上的首选方式。例如,使用带有id的元素,并使用innerHTML
向其写入输出,这样做更好,也更容易
document.getElementById('myOutput').innerHTML = '[some output here]';
在javascript中,数组只能有数字索引,如果要使用文本索引,应该使用object
var pop = new Object();
或
然后:
pop['la'] = new Array('nt','gb','te');
但是,由于对象不是数组,因此它没有长度成员,但就像数组一样,您可以使用遍历其所有值
使用document.write不是一个好的选择,因为它只在文档加载期间有效,而不是加载之后。尝试改用文本节点或innerhtml。请将代码缩进4个空格,格式化代码。输入下面的预览应该可以帮助您设置格式。问题是_ecpop是我从URL查询字符串中获取的字符串。。我在想这个方法。。。但是我不知道如何使它工作……然后你可以使用我们的pop[_ecpop],或者将pop[_ecpop]分配给一个变量,以进一步循环(
var-laArr=pop[_ecpop];for(var I=0;我看到editI实现了,如果我只将var-pop=new Array();更改为var-pop={};它工作了!
document.getElementById('myOutput').innerHTML = '[some output here]';
var pop = new Object();
var pop = {};
pop['la'] = new Array('nt','gb','te');