Javascript 如何从给定字符串中深入搜索对象
我想拆分Javascript 如何从给定字符串中深入搜索对象,javascript,Javascript,我想拆分str(点分隔)并查看对象树内部(如果值存在) 为了保持简单,我刚刚创建了一个简单的对象,但我希望它是一个深入的搜索 我只需要逻辑,不需要一个工作代码,只需要一个我在存在中需要做什么的方向,递归检查person.name.first是否存在,并返回一个boolean值true | | false,作为最终答案 var str = "person.name.first"; var arr = { person: { name: {'first':true ,'last' :
str
(点分隔)并查看对象树内部(如果值存在)
为了保持简单,我刚刚创建了一个简单的对象,但我希望它是一个深入的搜索
我只需要逻辑,不需要一个工作代码,只需要一个我在存在中需要做什么的方向,递归检查person.name.first
是否存在,并返回一个boolean
值true | | false
,作为最终答案
var str = "person.name.first";
var arr = {
person: {
name: {'first':true ,'last' : true },
age : true
}
}
function exists(){
...
}
exists(str,arr);//true === exists, false === does not exist
试一下:
function exists(str, arr) {
var parts = str.split('.');
for (var i = 0; i < parts.length; i++ ) {
if (arr.hasOwnProperty(parts[i])) {
arr = arr[parts[i]];
} else {
return false;
}
}
return true;
}
函数存在(str、arr){
var parts=str.split('.');
对于(变量i=0;i
#dupo它有点相似,但我只是想检查一下是否存在真的或假的。不获取值/参考。工作小提琴: