for ... in и функции
как сделать for ... in по ассоциативному массиву функций
обычный for тут не подходит а for ... in не пашед |
В JS нет ассоциативных массивов. Есть объекты.
for (var i in obj) {
alert(i);
}
|
но их можно юзать как ассоц массивы
|
KOLANICH,
а вы пытались посмотреть что у вас выходит? код приведите |
this.addCustom=function(func,name){
if(!func||!name)throw new Error("Required parameters expected");
this.custom[name]=func;
}
...
this.exec(){
...
for(var cf in this.custom){
console.log("custom function check");
if(custom[cf](elements[i])){
this.results[cf].push(elements[i]);
this.found++;
}
}
}
...
rx.addCustom(function(el){console.log(el.href);return true;},"links");
rx.exec();
однако console.log(this.custom["links"].toSource());//это в экзек засунул для проверки выдаёт код функции это значит, что функция в массиве |
KOLANICH,
а в чём тогда проблема? |
в том, что не работает через for ... in
это я вижу по тому, что в консоли нет собщений "custom function check" и не выполняются действия в теле функции (безымянной) |
а alert("this.custom = " + this.custom + ", cf = " + cf + " this.custom[cf] = " + this.custom[cf]) что выдаёт?
|
это в блоке for in?
содержимое этого блока вообще не исполняется почему-то |
KOLANICH,
да в нём. Тогда смотрит код до него. |
спасибо
всё запахало |
| Часовой пояс GMT +3, время: 11:08. |