Видимость в CoffeeScript

23.7.2013 - 1587 просмотров ;)

Известный факт что в CoffeeScript видимость ограничена. А я настолько редко и пишу да еще и в разных языках, что совсем потерялся, где какая видимость, но знаю что в CoffeeScript она разграничена. Обернута в анонимные функции.


Каждый кусок кода CoffeeScript заключен в анонимную функцию.

Две разные вставки CoffeeScript тупо не увидят переменные которые вроде бы находятся в одном уровне кода. Обернуто это по причине уменьшения разного рода конфликтов. Мне вообще-то по барабану, мне нравится сахар CoffeeScript, но излишняя защита дает знать.

Кроме переменных видимость так же ограничена и в функциях и соответственно в классах CoffeeScript.

Если нужно чтобы один кусок кода знал переменную из другого куска кода, надо просто объявить переменную в объекте window

:coffeescript
   window.test=’123′
   window.testf = ->
      alert "as"

Так будет все работать:

<p onclick="testf()"></p>

Вообщем мой опыт разработки в CoffeeScript крайне положителен и мне все нравится. Но я бы не сказал что это самостоятельный язык. Его надо знать тем кто немного шарит в JS.

Особенную радость вызывает утилита Prepros, которая на лету конвертит CoffeeScript в JavaScript.

В этой статье я тоже упомянал CoffeeScript:

Минимальное приложение на Android — jkeks
Статьи из раздела, Видеочат рулетка