存取深度嵌套的物件屬性可能很麻煩,尤其是在使用字串路徑遍歷物件時。此問題尋求根據提供的字串路徑從物件中檢索值的解決方案。
建議的方法採用以下函數deep_value,它迭代地導航在路徑字串:
<code class="javascript">var deep_value = function(obj, path) { for (var i = 0, path = path.split('.'), len = path.length; i < len; i++) { obj = obj[path[i]]; } return obj; };</code>
考慮以下物件:
var obj = { foo: { bar: 'baz' } };
要使用字串路徑「foo.bar」存取obj.foo.bar 的值,可以呼叫deep_value 函數,如下圖所示:
deep_value(obj, "foo.bar"); // returns "baz"
以上是如何使用字串路徑存取深度嵌套的物件值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!