Jquery append array:通过包含在中的值引用数组

Jquery append array:通过包含在中的值引用数组,jquery,arrays,append,Jquery,Arrays,Append,我目前正在使用.append将两个或多个数组连接在一起,形成一个短语,如您在这个JSFIDLE中看到的那样: 有这样的东西(但显然这是不正确的): PS 如果有帮助,我不介意更改为文字数组,例如: var words = [ {'english':'hundred', 'chinese':'百'}, ]; 谢谢你的建议 将数据结构更改为对象: var words = { 'one': '一', 'eight': '八', 'hundred': '百' }; 然

我目前正在使用.append将两个或多个数组连接在一起,形成一个短语,如您在这个JSFIDLE中看到的那样:

有这样的东西(但显然这是不正确的):

PS 如果有帮助,我不介意更改为文字数组,例如:

var words = [
{'english':'hundred', 'chinese':'百'},
];

谢谢你的建议

将数据结构更改为对象:

var words = {
    'one': '一',    
    'eight': '八',
    'hundred': '百'
};
然后更改
P1
函数以接受属性名称,并让它进行查找

function P1(key) {
    var sen = ('<a class="senword">' + words[key] + '<br/>' + key + ' </a>');
       return sen;
}
演示:


如果无法更改初始结构,请从中创建对象

var words_map = {};

$.each(words, function(i, val) {
    words_map[val[0]] = val[1];
});

演示:

单词
更改为json格式字符串,并使用
parseJSON
将其转换为对象。这看起来很棒,但为了便于解释,我简化了数组,每个单词实际上都有两个以上的值,例如
['一百','bǎI','百'],
这就是我使用多个数组而不是一个对象的原因-您的建议仍然可行吗?@user1218478:所以当请求
'hundered'
时,它的所有相关值都将连接到字符串中?它不应该有任何不同。只要让每个属性的值都是字符串数组,就像
'hundered':[bǎi','百']。啊,我不知道你能这么做!所以最后一个难题是如何引用
var sen=(''+words[key]+'
'+key+'');
?@user1218478:既然
words[key]
引用的是一个数组,你可以通过数字索引得到它们…
words[key][0]
words[key][1]
,等等…或者如果可能有不同的数量,并且它们由一个一致的字符串连接,比如

,你可以使用
单词[key]。连接(“
”)
。演示:我想这就解决了!我已经研究了几天,你在23分钟内回答了所有问题!非常感谢你,我学到了很多!
var words = {
    'one': '一',    
    'eight': '八',
    'hundred': '百'
};
function P1(key) {
    var sen = ('<a class="senword">' + words[key] + '<br/>' + key + ' </a>');
       return sen;
}
$("#onehundred").append(P1('one')).append(P1('hundred'));
$("#eighthundred").append(P1('eight')).append(P1('hundred'));
var words_map = {};

$.each(words, function(i, val) {
    words_map[val[0]] = val[1];
});