我有一个变量,我需要检查它是否与数组中的一个键匹配,并在jquery中获取其值。
JS
var t = 30;
var obj = { 10: 1, 20 : 2, 30: 3, 40: 4, 50 : 5, 60: 6 };
$.each(obj, function(key, value){
if ( t == key ) {
alert(value);
}
});
我很感激!
答案 0 :(得分:1)
看起来您的代码实际上在上面工作。您是否可能尝试使用vanilla javascript而不是您拥有的jQuery解决方案?如果您不使用jQuery,可以使用以下选项:
<script>
var t = 30;
var obj = {
10: 1,
20: 2,
30: 3,
40: 4,
50: 5,
60: 6
};
for (var instance in obj) {
if (instance == t){
alert(obj[instance])
}
}
</script>
您可以使用以下方法进一步清理循环:
for (var instance in obj) {
instance == t ? alert(obj[instance]) : ''
}
答案 1 :(得分:1)
要检查,如果要查找值为type = 1
的值,如果搜索密钥然后使用type = 0
,则值/键使用此功能。
var obj = {
10: 1,
20: 2,
30: 3,
40: 4,
50: 5,
60: 6
};
var find = function(input, target,type){
var found;
for (var prop in input) {
if(type === 1)
{
if(input[prop] == target){
found = prop;
}
}
else
{
if(prop == target){
found = prop;
}
}
};
return found;
};
var t = 5; // Value to found in array
var found = find(obj, t ,1); // For Value Check only key return
if(found){
alert(found);
}
t = 30; // key to found in array
var found = find(obj, t ,0); // For key Check only key return
if(found){
alert(found);
}
注意:如果您需要,此函数仅返回两种类型的键 然后使用
obj[found]
。