我在数组中有ID和说明:
var tablica = [{"3":"asdasd asd"},{"19":"asddas fff"},{"111111":"adas asf asdff ff"},{"4":"re"},{"5":"asdasd"},{"6":"we"},{"7":"asdasdgg"},{"9":"asdasdasd"},{"16":"sdads"},{"10":"asdgg"},{"11":"ggg"}];

如何使用jQuery或JavaScript选择ID的单个描述?
答案 0 :(得分:1)
使用es6,
var tablica = [{"3":"asdasd asd"},{"19":"asddas fff"},{"3":"adas asf asdff ff"},{"4":"re"},{"5":"asdasd"},{"6":"we"},{"7":"asdasdgg"},{"9":"asdasdasd"},{"16":"sdads"},{"10":"asdgg"},{"11":"ggg"}];
var res = tablica.filter(x=> x["3"])
console.log(res);

答案 1 :(得分:1)
虽然对象中有重复的键,但我建议使用Array#filter
并稍后使用您需要的对象信息。
var data = [{ 3: "asdasd asd" }, { 19: "asddas fff" }, { 3: "adas asf asdff ff" }, { 4: "re" }, { 5: "asdasd" }, { 6: "we" }, { 7: "asdasdgg" }, { 9: "asdasdasd" }, { 16: "sdads" }, { 10: "asdgg" }, { 11: "ggg" }],
key = 3,
result = data.filter(function (o) {
return key in o;
});
console.log(result);

.as-console-wrapper { max-height: 100% !important; top: 0; }

答案 2 :(得分:1)
我认为最好的方法是将此数组转换为对象,其中描述的键将是ID。这样就无需在每次要查找描述时进行搜索。只有在准备好对象之后,您才能轻松快速地访问该描述。
例如:
var tablica = [{"3":"asdasd asd"},{"19":"asddas fff"},{"3":"adas asf asdff ff"},{"4":"re"},{"5":"asdasd"},{"6":"we"},{"7":"asdasdgg"},{"9":"asdasdasd"},{"16":"sdads"},{"10":"asdgg"},{"11":"ggg"}];
var obj = {};
tablica.forEach(function(el){
var id = Object.keys(el)[0];
obj[id] = el[id];
});
console.log(obj['5']);
现在,如果您想获取ID = 5的说明,您可以轻松访问它obj['5']
答案 3 :(得分:-1)
嗯,因为你有一个对象数组
,所以有点复杂您可以解析整个数组,并为其中的每个对象检查它是否具有所需的键:
var tablica = [{"3":"asdasd asd"},{"19":"asddas fff"},{"3":"adas asf asdff ff"},{"4":"re"},{"5":"asdasd"},{"6":"we"},{"7":"asdasdgg"},{"9":"asdasdasd"},{"16":"sdads"},{"10":"asdgg"},{"11":"ggg"}];
var wantedId = "3"; // the ID you actually search
var wantedObj;
tablica.map(function(obj) {
if (wantedId in obj) {
wantedObj = obj;
}
});
console.log(wantedObj);

无论如何,你应该修复你的数据结构:数组的每个对象应该有一个属性id
和一个属性value
(或类似的东西)
var tablica = [
{
id: "3",
value: "asdasd asd"
},
{
id: "19",
value: "asddas fff"
}
];