Показать сообщение отдельно
  #13 (permalink)  
Старый 29.01.2010, 20:20
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

интересно... По поводу js я бы сделал так (поиск первого элемента, удовлетворяющего условию)
function getElement() {
    return [1, 2, 3].findFirst(function( element ) {
        return element % 2 == 0;
    });
}

alert(getElement());

т.е. как минимум отсутствие такой функциональности не создает никаких сложностей. Кроме того, я бы даже сказал, что наличие таких возможностей усложняет код: глядя на return так сразу и не скажешь, что он завершает. Хотя это уже, конечно, "предварительное" мнение - надо попробовать эту штуку в действии

Как я понял, return в замыкании, созданном с помощью Proc.new завершает функцию, в которой было создано замыкание. И использовать его, за пределами этой функции смысла не имеет

может еще какие-нибудь примеры использования Proc.new есть? Т.е. на данный момент я вижу, что это можно использовать для поиска первого элемента

Сообщение от Dmitry A. Soshnikov
Ну, для начала общий пример (из Википедии):
не додумался в статью про замыкания заглянуть

Последний раз редактировалось x-yuri, 29.01.2010 в 20:23.
Ответить с цитированием