gpt4 book ai didi

javascript - 使用字符串访问多维对象?

转载 作者:行者123 更新时间:2023-11-28 19:55:30 24 4
gpt4 key购买 nike

假设我有一个字符串:'first.second.last'

我也有一个对象:

{
'first': {
'second' : {
'last': "value"
}
}
}

如何访问"value"使用该字符串?

最佳答案

类似这样的事情...

var o = {
'first': {
'second' : {
'last': "value"
}
}
};
var s = 'first.second.last';
var val = s.split('.').reduce(function(p, c) {
return p.hasOwnProperty(c) && p[c] || p;
}, o);

这将深入到您的对象并找到匹配的最深的键。相反,如果您希望在匹配键失败时返回 null,请将 reduce 回调更改为

function(p, c) {
return p && p.hasOwnProperty(c) && p[c] || null;
}

如果您需要 Array.prototype.reduce 的旧版支持,请参阅 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce#Polyfill

关于javascript - 使用字符串访问多维对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22648796/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com