Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 24.05.2011, 18:47
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Сообщение от Sweet
Идентификаторы timeout-ов наверное.
Точно.
Сообщение от Sweet
Если это имеет значение, несмотря на некроссбраузерность, то проверить не проблема
Это был не вопрос
Ответить с цитированием
  #12 (permalink)  
Старый 24.05.2011, 19:27
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Сообщение от FINoM
Это был не вопрос
Точно
Ответить с цитированием
  #13 (permalink)  
Старый 24.05.2011, 21:41
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

подобный пример идёт по моему здесь с циклом и таймером
http://www.addconf.ru/event.sdf/ru/a...ySoshnikov/368
Ответить с цитированием
  #14 (permalink)  
Старый 25.05.2011, 01:49
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Сообщение от dmitriymar
http://www.addconf.ru/event.sdf/ru/a...ySoshnikov/368
1. То есть смело можно расширять прототипы (если у прототипа задать свойство с enumerable:false)? Просто других причин я не вижу (кроме идеологических).
2. До сих пор не понимаю, зачем использовать геттер следующим образом:
o = {
  a:4,
  b:5,
  get sum() {
    return this.a+this.b;
  }
}

3. Что за хуита?



"Я очень радовался, когда понял что это такое" - немного измененная цитата автора.
Это опечатка и вместо x должен быть k?
Ответить с цитированием
  #15 (permalink)  
Старый 25.05.2011, 01:59
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Немного неприятно, что не идет речи о таких фичах, которые были в 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))]

...
Это то что бросилось в глаза (переопределение операторов и прочие спорные моменты не в счет)
Ответить с цитированием
  #16 (permalink)  
Старый 25.05.2011, 02:31
Аватар для poorking
prodigy
Отправить личное сообщение для poorking Посмотреть профиль Найти все сообщения от poorking
 
Регистрация: 01.11.2010
Сообщений: 503

FINoM,
Сообщение от FINoM
1. То есть смело можно расширять прототипы (если у прототипа задать свойство с enumerable:false)? Просто других причин я не вижу (кроме идеологических).
Кроме того что свойства прототипа в for in перечисляется есть риск что затрешь чье то расширение или твое затрут. Enumerable решает проблему первого, но второе решено только частично: твое свойство теперь не затрут (если задать только чтение), но надо все равно искать обход того, что имя создаваемого расширения уже может быть занято и у него стоит writable true.

Сообщение от FINoM
2. До сих пор не понимаю, зачем использовать геттер следующим образом:
Получается некое статическое свойство как, например length, мне кажется можно удобно использовать.

3. Скорее всего опечатка
__________________
readOnly
Ответить с цитированием
  #17 (permalink)  
Старый 25.05.2011, 03:51
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Сообщение от poorking
Получается некое статическое свойство как, например length, мне кажется можно удобно использовать.
Метод тоже удобно использовать.
Ответить с цитированием
  #18 (permalink)  
Старый 25.05.2011, 04:24
Аватар для poorking
prodigy
Отправить личное сообщение для poorking Посмотреть профиль Найти все сообщения от poorking
 
Регистрация: 01.11.2010
Сообщений: 503

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
__________________
readOnly
Ответить с цитированием
  #19 (permalink)  
Старый 25.05.2011, 10:59
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от FINoM
2. Многострочные строки без использования дурацких конкатенаций и не менее идиотского экранирования переносов
Конкатенация удобней. В многострочных строках проблема с отступами: или отступы не делаем, тогда ломается вложенность кода, или делаем, тогда появляются лишние пробелы в строках.


Сообщение от FINoM
3. Комменты в регулярках
А зачем?
Ответить с цитированием
  #20 (permalink)  
Старый 25.05.2011, 13:04
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Сообщение от Kolyaj
В многострочных строках проблема с отступами
Если проблема красивости кода для вас настолько важна, табы можно реплейсить.
Сообщение от Kolyaj
А зачем?
Дык, удобно же:
/# 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
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Книга] Stoyan Stefanov, Javascript Patterns Dmitry A. Soshnikov Учебные материалы 20 13.08.2013 11:37
javascript вставки в vrml сцены. Передать событие из броузера Proletariy Javascript под браузер 0 10.05.2011 12:26
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34
Открыть с помощью javascript скрытый слой msprog Общие вопросы Javascript 1 07.09.2008 18:54