Я воссоздал ряд методов Underscore.js для изучения JavaScript и программирования в целом.Почему мой метод find не определен?
Ниже приводятся мои попытки воссоздать метод _.find()
подстроки.
var find = function(list, predicate) { // Functional style
_.each(list, function(elem){
if (predicate(elem)) {
return elem;
}
});
};
var find = function(list, predicate) { // Explicit style
if (Array.isArray(list)) {
for (var i = 0; i < list.length; i++) {
if (predicate(list[i])) {
return list[i];
}
}
} else {
for (var key in list) {
if (predicate(list[key])) {
return list[key];
}
}
}
};
Мой второй find
метод, который использует for
петли и петли for in
работы. Принимая во внимание, что мой первый метод find
вернет undefined
. Я считаю, что обе должны выполнять ту же работу. Однако они этого не делают. Кто-нибудь, пожалуйста, укажите, что происходит?
Черт, ты меня опередил :( –
Спасибо haim770 и php_nub_qq! – KyleC