在 for 循环中调用对象的函数 - JavaScript
Invoking a function of an object inside a for loop - JavaScript
我有一个名为 foo
的对象:
function Foo(){
this.conceal = function(){ ... };
};
和一个名为 toggleView
的方法,它遍历 foo
的集合并在每个实例上调用 conceal()
方法:
function toggleView(foos){
for(a in foos){
foos[a].conceal();
}
}
当然还有foos[a].conceal();
returns:隐藏不是函数
你应该在某个时候调用函数 Foo 以便隐藏变成 "function"。
function Foo(){
this.conceal = function( item ) {
console.log(item); // "a" "b" "c"
};
};
function toggleView(foos) {
var myFoo = new Foo(); // Create new instance (here or outside this fn)
for(a in foos){
myFoo.conceal(foos[a]); // use your instance and pass as items arg. reference
}
}
toggleView(["a","b","c"]);
示例使 toggleView
成为 Foo
的 原型
function Foo(){
this.conceal = function( item ) {
console.log(item); // "a" "b" "c"
};
}
Foo.prototype.toggleView = function(foos) {
for(a in foos){
this.conceal(foos[a]); // invoke .conceal Method using `this` reference
}
}
var myFoo = new Foo(); // Create new instance
myFoo.toggleView(["a","b","c"]);
我有一个名为 foo
的对象:
function Foo(){
this.conceal = function(){ ... };
};
和一个名为 toggleView
的方法,它遍历 foo
的集合并在每个实例上调用 conceal()
方法:
function toggleView(foos){
for(a in foos){
foos[a].conceal();
}
}
当然还有foos[a].conceal();
returns:隐藏不是函数
你应该在某个时候调用函数 Foo 以便隐藏变成 "function"。
function Foo(){
this.conceal = function( item ) {
console.log(item); // "a" "b" "c"
};
};
function toggleView(foos) {
var myFoo = new Foo(); // Create new instance (here or outside this fn)
for(a in foos){
myFoo.conceal(foos[a]); // use your instance and pass as items arg. reference
}
}
toggleView(["a","b","c"]);
示例使 toggleView
成为 Foo
function Foo(){
this.conceal = function( item ) {
console.log(item); // "a" "b" "c"
};
}
Foo.prototype.toggleView = function(foos) {
for(a in foos){
this.conceal(foos[a]); // invoke .conceal Method using `this` reference
}
}
var myFoo = new Foo(); // Create new instance
myFoo.toggleView(["a","b","c"]);