Цитата:
Цитата:
|
Цитата:
|
подобный пример идёт по моему здесь с циклом и таймером
http://www.addconf.ru/event.sdf/ru/a...ySoshnikov/368 |
Немного неприятно, что не идет речи о таких фичах, которые были в ES4:
1. Классы 2. Многострочные строки без использования дурацких конкатенаций и не менее идиотского экранирования переносов """Я большая строка""" 3. Комменты в регулярках 4. Суффиксы (Suffixes on numeric literals denote their type: -7i, 1u, 37d, 14.5m.) 5. "Заполняторы" [i * i for (i in naturals(10))] ... Это то что бросилось в глаза (переопределение операторов и прочие спорные моменты не в счет) |
FINoM,
Цитата:
Цитата:
3. Скорее всего опечатка |
Цитата:
|
FINoM,
Я обратного и не утверждал, но это не одно и тоже, думаю что геттеры и сеттеры очень удобная штука. К примеру какому нибудь свойству, можно задать такой сеттер, что значения присваивать можно будет разных типов данных например, сеттер будет анализировать и приводить к единой системе. И гораздо будет удобнее писать obj.prop = 5, например, чем obj.prop.set(5) Простой пример: (правда я не проверял ничего, просто наобум, но если так пользоваться можно будет, то это здорово)
var foo = {
val: 0,
set dist(d){
if(typeof d == "number"){
this.val += d;
}
if(typeof d == "string"){
switch(d.replace(/\d*/, "")){
case "km":
this.val += +d.replace("km", "") * 1000 * 100 * 10;
break;
/*
case ...
*/
}
}
},
get dist(){
return this.val + " millimeters";
}
}
//а пользоваться очень удобно
foo.dist += "5km";
alert(foo.dist); //5000000 millimeters
|
Цитата:
Цитата:
|
Цитата:
Цитата:
/# The protocol is an alpha name followed by colon and double slash
(?P<protocol> [a-z]+)
:
/\/\
# The host is two or more dot-separated alpha names
(?P<host> [a-z]+ (?: \. [a-z]+ )+)
# The path is optionally present
(?P<path> (?: \/ [a-z]+ )* \/? )
/x
|
| Часовой пояс GMT +3, время: 16:02. |