有没有办法调用模块的所有功能而不是只选择每个功能?
例如:
bettermovies.js
module.exports={
printAvatar: function(){
console.log("Avatar");
},
printLord: function(){
console.log("Lord of the Rings");
},
printGod: function(){
console.log("God Of War");
},
favMovie: "Return of the King"
}

betterindex.js:
var movies=require('./bettermovies');
movies.printAvatar();
movies.printLord();
console.log(movies.favMovie);

我问的原因是因为如果我在.js中有一百个电影功能,那么手动完成所有操作并不具备调用所有功能的功能是非常繁琐的。这实际上引出了另一个问题,比如说你有100个这样的版画"电影"功能,你想要打印所有这些,除了其中3个,你会怎么做呢?
谢谢!
答案 0 :(得分:0)
您可以在需要之后遍历电影对象。这样的事情应该有效:
for (var prop in movies) {
// Verifies if the property is a function. If it is, the function is called
if (movies[prop] instanceof Function) {
movies[prop]();
} else {
console.log(movies[prop]);
}
}
答案 1 :(得分:0)
我创建了jsfidde。以下代码可能会解决您的问题。代码迭代对象,如果变量是函数,则调用它。
var a = {
printAvatar: function(){
console.log("Avatar");
$("body").append("Avatar <br/>");
},
printLord: function(){
console.log("Lord of the Rings");
$("body").append("Lord of the Rings <br/>");
},
printGod: function(){
console.log("God Of War");
$("body").append("God Of War <br/>");
},
favMovie: "Return of the King"
}
for(x in a){
if(typeof a[x] == "function"){ // Only if function.
a[x]();
}
}