gpt4 book ai didi

javascript - 如何console.log obj 的 props 并检查 prop 是否为 func 以便运行此 func?

转载 作者:太空宇宙 更新时间:2023-11-04 15:46:37 24 4
gpt4 key购买 nike

将对象的所有属性执行输出到控制台,将子属性转移到新行。

如果属性是Function类型,则不输出到控制台,而是调用函数。

let data = {
a: {a: 1,
b: {a: 3,b: 10},
c: 14},
b: {f: function () {console.log("this is function");},
a: "123"}
};

showNodes(data);

function showNodes(element) {
console.log(element);
}

最佳答案

循环对象

如果你想遍历一个对象,你可以这样做:

for (var prop in obj) {
obj[prop] = 'xxx';
}

如果对象具有多个维度(如您的示例),您可以这样做:

function doSomethingWithAValue(obj, callback) {
Object.keys(obj).forEach(function(key) {
var val = obj[key];
if (typeof val !== 'object') {
callback(val);
} else {
doSomethingWithAValue(val, callback);
}
});
}

代码来自这个SO答案:Traverse through multi-dimentional object

检查函数是否有效

要检查一个元素是否是一个函数,可以使用 typeof。

typeof obj[key] === 'function'

希望这有帮助

祝你好运:)

关于javascript - 如何console.log obj 的 props 并检查 prop 是否为 func 以便运行此 func?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43511893/

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