gpt4 book ai didi

javascript - 传递给函数的js对象变成字符串

转载 作者:行者123 更新时间:2023-11-30 09:03:29 26 4
gpt4 key购买 nike

`我编写了一个 js 函数来遍历一个 javascript 对象并使用 console.log() 输出它的内容。当遇到作为对象的属性时,它递归地调用自身。问题出在递归循环中,传入的属性不显示任何子属性。

以下面的示例(也在 JS Fiddle 处)为例,一旦将 jsObject.payload 传递到递归调用中,“payload”似乎恢复为简单的字符串对象。

var EnumerateObject = function(object, path) {
if (!path) path = '';

for (var property in object) {
if (object.hasOwnProperty(property)) {
if (typeof object[property] === "object") EnumerateObject(property, path + '.' + property);
else console.log(path + '.' + property + '=' + typeof property);
}
}
}

var json = '{"success": true, "error": "", "payload": { "fetch": "1", "xml": "<xml />" }}';
var jsObject = $.parseJSON(json);

EnumerateObject(jsObject);

我知道我在这里遗漏了一些微妙的东西,但我不确定为什么我传递给“对象”参数的“属性”突然变成了一个字符串?

最佳答案

property 是一个包含值“payload”的字符串。

object[property]{'fetch':'1', 'xml':.... }

关于javascript - 传递给函数的js对象变成字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7153008/

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