[英]how to access individual elements of a javascript object literal?
我有一个 javascript object 文字? 我在我的网页中以 data.list[i].ger 或 data.list[i].eng 的形式访问它们
如果我想直接搜索条目,如何直接访问该条目? 还是我必须在排序时进行线性搜索或二进制搜索?
data = {
list: [
{
"ger": "A-as",
"eng": "A as"
},
{
"ger": "A-aws",
"eng": "a-was "
},
{
"ger": "we",
"eng": "cv"
},
{
"ger": "q",
"eng": "w-la-w"
},....
例如,如果我想访问 "ger": "q","eng": "w-la-w" 我会将其作为 data.list[4].ger 访问
有什么方法可以直接访问知道该条目的索引是什么?
我想您可能正在寻找JSONSelect 。 它可以轻松访问复杂的 JSON 文档中的数据,但看起来像 CSS。
查看示例,它看起来很像您想要做的。
例如,要获取 ger:q 的 eng 版本,您可以执行.ger:val("q") ~.eng
您可以在此处下载它并将其与JSONSelect.match
或JSONSelect.forEach
使用。
如果你只想搜索你的数组,我会用 go 类似的东西
function lookupTrans(value, fromLang, toLang) {
for (var i = 0, dataLen = data.list.length; i < dataLen; i++) {
if (data.list[i][fromLang] === value) {
return data.list[i][toLang];
// return i (if you're lookup for just the index number)
}
}
return "";
}
但是,我确实想确保您不只是尝试进行单向国际化。 如果是这种情况,我建议只使用命名键:
var i18n = {
"translation": {
"en": "translation",
"ja": "hon'yaku"
},
"list": {
"en": "list",
"ja": "risuto"
},
"example": {
"en": "example",
"ja": "rei"
},
"imbueWithConfidence": {
"en": "Let's translate!",
"ja": "Hon'yaku shimashou!"
}
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.