首页  >  文章  >  web前端  >  如何使用字符串路径查询检索嵌套对象值?

如何使用字符串路径查询检索嵌套对象值?

Patricia Arquette
Patricia Arquette原创
2024-10-25 05:21:02453浏览

How to Retrieve Nested Object Values Using String Path Queries?

通过字符串路径检索嵌套对象值

查询:

函数如何优雅通过指定所需值的字符串路径来提取嵌套对象值?

目标:

创建具有以下所需行为的函数:

var obj = { foo: { bar: 'baz' } };
function(obj, "foo.bar") -> 'baz'

解决方案:

要实现此目的,请考虑利用以下函数:

var deep_value = function(obj, path){
    var pathComponents = path.split('.');
    for (var i = 0; i < pathComponents.length; i++){
        obj = obj[pathComponents[i]];
    }
    return obj;
};

此函数利用字符串路径作为指导,有效地导航对象层次结构,提取所需的值。

演示:

函数功能演示:

var obj = { foo: { bar: 'baz' } };
console.log(deep_value(obj, "foo.bar")); // Output: 'baz'

注意:

为了处理所需值可能不存在的情况,可以修改函数以在这种情况下返回 undefined。

以上是如何使用字符串路径查询检索嵌套对象值?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn