无论大写,检查对象中的匹配键
Check for matching key in object regardless of capitalization
给定一个密钥:'mykey'
并给定一个对象:Object {Mykey: "some value", ...}
并使用以下 if (key in myObject)
语法检查匹配...
如何不考虑大写字母来检查匹配的字符串?
例如:键 mykey
应该与对象中的 Mykey
匹配,即使 M
是大写的。
我知道一个函数可以做到这一点:How to uppercase Javascript object keys?
我正在寻找是否有其他方法。
您可以创建一个函数来执行此操作,没有原生的不区分大小写的方法来检查某个键是否在对象中
function isKey(key, obj) {
var keys = Object.keys(obj).map(function(x) {
return x.toLowerCase();
});
return keys.indexOf( key.toLowerCase() ) !== -1;
}
像
一样使用
var obj = {Mykey: "some value"}
var exists = isKey('mykey', obj); // true
按照这个例子
var myKey = 'oNE';
var text = { 'one' : 1, 'two' : 2, 'three' : 3};
for (var key in text){
if(key.toLowerCase()==myKey.toLowerCase()){
//matched keys
console.log(key)
}else{
//unmatched keys
console.log(key)
}
}
JavaScript: case-insensitive search
给定一个密钥:'mykey'
并给定一个对象:Object {Mykey: "some value", ...}
并使用以下 if (key in myObject)
语法检查匹配...
如何不考虑大写字母来检查匹配的字符串?
例如:键 mykey
应该与对象中的 Mykey
匹配,即使 M
是大写的。
我知道一个函数可以做到这一点:How to uppercase Javascript object keys?
我正在寻找是否有其他方法。
您可以创建一个函数来执行此操作,没有原生的不区分大小写的方法来检查某个键是否在对象中
function isKey(key, obj) {
var keys = Object.keys(obj).map(function(x) {
return x.toLowerCase();
});
return keys.indexOf( key.toLowerCase() ) !== -1;
}
像
一样使用var obj = {Mykey: "some value"}
var exists = isKey('mykey', obj); // true
按照这个例子
var myKey = 'oNE';
var text = { 'one' : 1, 'two' : 2, 'three' : 3};
for (var key in text){
if(key.toLowerCase()==myKey.toLowerCase()){
//matched keys
console.log(key)
}else{
//unmatched keys
console.log(key)
}
}
JavaScript: case-insensitive search