До этого момента мы преимущественно говорили об улучшении быстродействия JavaScript в Internet Explorer 9, и не сказали почти ничего о новых или измененных функциях языка в движке "Chakra". Теперь, с выпуском третьего Platform Preview, мы можем рассказать вам о новых возможностях JavaScript, которые вы можете попробовать самостоятельно. К слову, промышленным стандартом, определяющим язык JavaScript, является ECMA-262: ECMAScript Language Specification, разработанный и опубликованный Ecma International. В прошлом году исполнилось десять лет с момента представления третьей редакции ECMA-262 в декабре 1999 года. В декабре 2009 года Ecma одобрила пятую редакцию ECMA-262, являющуюся преемником третьей редакции (четвертая редакция никогда не публиковалась), и в прошлом же году мы представили частичную поддержку ECMAscript 5 (ES5), добавив поддержку JSON в IE8. Помимо JSON, однако, ES5 стандартизирует множество важных расширений в языке JavaScript. Новые возможности ES5 в IE9 Platform PreviewВ режим документов Standards в IE9 добавлено множество важных возможностей ES5:Новые методы массива. Было добавлено девять новых методов для работы над массивами. Два из них, indexOf и lastIndexOf, поддерживают поиск определенного значения в массиве. По существу они схожи с одноименными функциями, что выполняют операции над строками. Остальные семь методов массивов позволяют управлять массивами при помощи стиля функционального программирования. Например, нижеприведенный фрагмент кода использует новый метод фильтра для сбора элементов массива, отвечающих определенному условию: //функция, проверяющая, включен или отключен объект элемента менюfunction enabled(menuItem) {return menuItem.status==="enabled"};
//Предположим, что отдельные элементы меню имеют свойство состояния (status property) и
//что объект меню имеет свойство элементов (items property), которое является массивом.
//Создаем новый массив, содержащий лишь включенные элементы менюvar enabledItems=myMenu.items.filter(enabled);Эти методы поддерживают различные виды обработки массива без явного программирования циклов. Кроме этого, все методы являются универсальными, то есть они могут быть применены к любому объекту с пронумерованными свойствами, а не просто объектам, созданным при помощи конструктора массива. Вы можете познакомиться с демонстрацией, использующей эти методы на веб-узле IE9 Test Drive. Read more: Блог команды разработчиков Internet Explorer
//Предположим, что отдельные элементы меню имеют свойство состояния (status property) и
//что объект меню имеет свойство элементов (items property), которое является массивом.
//Создаем новый массив, содержащий лишь включенные элементы менюvar enabledItems=myMenu.items.filter(enabled);Эти методы поддерживают различные виды обработки массива без явного программирования циклов. Кроме этого, все методы являются универсальными, то есть они могут быть применены к любому объекту с пронумерованными свойствами, а не просто объектам, созданным при помощи конструктора массива. Вы можете познакомиться с демонстрацией, использующей эти методы на веб-узле IE9 Test Drive. Read more: Блог команды разработчиков Internet Explorer
0 comments:
Post a Comment