Page 26 - jQuery для начинающих
P. 26

—  контекст this можно изменить используя функции bind, call, и apply

                    Всё  что  касается  window  относится  лишь  к  браузерам,  но  поскольку  книга  о
                    jQuery, то иное поведение я и не рассматриваю, но вот так прозрачно намекаю,
                    что оно есть ;)




             Замыкания


             Изучив  замыкания,  можно  понять  много  магии  в  JavaScript’e.  Приведу  пример  кода  с
             пояснениями:


                    var a = 1234;
                    var myFunc = function(){

                           var b = 4321;
                           var c = 1111;
                           return function() {

                                  return ((a+b)/c);
                           };

                    };
                    var anotherFunc = myFunc(); // myFunc возвращает анонимную функцию
                                                     // с «замкнутыми» значениями c и b

                    console.log(anotherFunc()); // => 5


             Что  же  тут  происходит:  функция,  объявленная  внутри  другой  функции,  имеет  доступ  к
             переменным  родительской  функции.  Повтыкайте  в  код,  пока  вас  не  осенит,  о  чём  я  тут
             толкую.



             Рекомендуемые статьи по теме:
                    —  «Функции "изнутри", замыкания»
                       [http://learn.javascript.ru/closures]
                    —  «Использование замыканий»

                       [http://learn.javascript.ru/closures-usage]
                    —  «Closures: Front to Back»
                       [http://net.tutsplus.com/tutorials/javascript-ajax/closures-front-to-back/]


             Вводная по JavaScript затянулась, лучше почитайте: http://learn.javascript.ru/






                                                                                                         26


                                                                                        www.trk.kg
   21   22   23   24   25   26   27   28   29   30   31