相关疑难解决方法(0)

测试是否存在嵌套的JavaScript对象键

如果我有一个对象的引用:

var test = {};
Run Code Online (Sandbox Code Playgroud)

可能(但不是立即)有嵌套对象,如:

{level1: {level2: {level3: "level3"}}};
Run Code Online (Sandbox Code Playgroud)

在最深层嵌套的对象中测试密钥是否存在的最佳方法是什么?

alert(test.level1);收益率undefined,但alert(test.level1.level2.level3);失败了.

我现在正在做这样的事情:

if(test.level1 && test.level1.level2 && test.level1.level2.level3) {
    alert(test.level1.level2.level3);
}
Run Code Online (Sandbox Code Playgroud)

但我想知道是否有更好的方法.

javascript nested properties object

616
推荐指数
19
解决办法
21万
查看次数

Javascript:通过将路径作为字符串传递给它来从对象获取深层值

可能重复:
使用字符串键访问嵌套的JavaScript对象

也许标题不够明确,我只是不知道如何指定我正在寻找的东西,我的英语真的很糟糕,抱歉.

我正在尝试创建返回对象值的函数,但也可以使用嵌套对象.例如:

var obj = {
  foo: { bar: 'baz' }
};
Run Code Online (Sandbox Code Playgroud)

我想通过将字符串"foo.bar"提供给函数来访问obj.foo.bar的值.

function(obj, path) {
  // Path can be "foo.bar", or just "foo".
}
Run Code Online (Sandbox Code Playgroud)

谢谢!

javascript syntax path

59
推荐指数
5
解决办法
7万
查看次数

如何检查对象是否未定义(javascript)?

我必须检查对象是否未定义,但是当我这样做时

typeof myUnexistingObject.myUnexistingValue == 'undefined'
Run Code Online (Sandbox Code Playgroud)

我收到这个错误

Uncaught ReferenceError: myUnexistingObject is not defined
Run Code Online (Sandbox Code Playgroud)

那么,如何检查未定义的对象或属性?

javascript undefined javascript-objects

5
推荐指数
1
解决办法
7031
查看次数