Nat*_*han 2 javascript iteration object
如何调用此对象中的每个函数?
var obj = {
hey1: function() {
alert('hey');
},
hey2: function() {
alert('hey2');
},
hey3: function() {
alert('hey3');
}
}
Run Code Online (Sandbox Code Playgroud)
我希望每个函数都能一个接一个地运行.我正在寻找类似的东西:
for (var hey in obj) {
hey();
}
Run Code Online (Sandbox Code Playgroud)
但显然不会运行(否则我不会问这个问题).
多谢你们!!!
for (var hey in obj) {
obj[hey]();
}
Run Code Online (Sandbox Code Playgroud)
在无法保证每个属性都是函数的情况下,您可以清除其他属性:
for (var hey in obj) {
if (typeof obj[hey] == "function") {
obj[hey]();
}
}
Run Code Online (Sandbox Code Playgroud)
进一步将其限制为仅对象的直接属性(而不是从其原型继承的属性):
for (var hey in obj) {
if (typeof obj[hey] == "function" && obj.hasOwnProperty(hey)) {
obj[hey]();
}
}
Run Code Online (Sandbox Code Playgroud)