В очередной версии языка JavaScript добавлено уйма вкусностей, которые делают его все более похожим на функциональный язык. Правда вся эта прелесть пока работает только в Mozilla 2.x, но тем не менее ;)
Вот примеры вкусностей -- что это, я писать не буду, предлагаю догадаться самим :)
Array Comprehensions
var ten_squares = [i * i for (i in range(0, 10))];
var evens = [i for (i in range(0, 21)) if (i % 2 == 0)];
команда let
if (x > y)
{
let gamma = 12.7 + y;
i = gamma * x;
}позволяет не плодить сущности без нужды экспортировать переменную из блока
И самое вкусное!
var a = 1;
var b = 3;
[a, b] = [b, a];можно использовать массив слева от знака =
Оставшееся читаем здесь -
http://developer.mozilla.org/en/docs/New_in_JavaScript_1.7и здесь -
http://www.neilmix.com/2007/02/07/threading-in-javascript-17/