Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1401 (permalink)  
Старый 18.08.2015, 12:54
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Цитата:
2. Разве это прописано в стандарте? Под "это" подразумеваю:
- обязательность вызова супер в ребенке в принципе
- обязательность вызова супер до работы с this в ребенке
Обязательность вызова super вообще - нет, обязательность вызова до записи в this - да. В стандарте сейчас пруф не смог найти, но дело в том, что объект создается в момент вызова самого глубокого конструктора в иерархии (чтобы, в частности, возможно было наследовать от встроенных классов, создающих экзотические объекты); соответственно, до вызова super (если он вообще есть) this попросту еще не существует.
Ответить с цитированием
  #1402 (permalink)  
Старый 21.08.2015, 10:08
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Сообщение от Erolast
что объект создается в момент вызова самого глубокого конструктора в иерархии
не согласен. Объект создается в момент вызова конструктора верхнего уровня, и уже после этого на него применяются изменения вглубь дерева наследования (level_1 -> level_2 -> level_3) по средствам вызова super()

а то, о чем ты сказал делает цепочка прототипов
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #1403 (permalink)  
Старый 21.08.2015, 22:04
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

http://www.2ality.com/2015/02/es6-cl...structor_calls
Цитата:
In a derived class, you must call super() before you can use this.
Implicitly leaving a derived constructor without calling super() also causes an error.

http://www.2ality.com/2015/02/es6-cl...tanc e_object
Цитата:
In ES6, it [an instance] is created in the base constructor, the last in a chain of constructor calls.

this originally being uninitialized in derived constructors means that an error is thrown if they access this in any way before they have called super().

If a constructor returns implicitly (without a return statement), the result is this. If this is uninitialized, a ReferenceError is thrown. This protects you against forgetting to call super().

Да, так что я попутал - не вызывать super в ребенке тоже нельзя.

---
Цитата:
по средствам
Посредством. По средствам только живут.
Этому форуму жутко не хватает тега hr, да.

Последний раз редактировалось Erolast, 21.08.2015 в 22:09.
Ответить с цитированием
  #1404 (permalink)  
Старый 22.08.2015, 00:40
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Erolast, можно подхачить.

---------------------------------------------------------------------------------

Типа линия.

UPD: Хотя на фуррифоксе говёно :с Как вариант -- поискать какой-нибудь неразрывный пробел, который местным парсером не вырезается.
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием
  #1405 (permalink)  
Старый 22.08.2015, 14:41
Аватар для Safort
Профессор
Отправить личное сообщение для Safort Посмотреть профиль Найти все сообщения от Safort
 
Регистрация: 23.12.2013
Сообщений: 1,856

Сообщение от trikadin Посмотреть сообщение
Ну не перешли они и бог с ними. Как это мешает использованию бабеля?
Да я и сам не знаю(
Ответить с цитированием
  #1406 (permalink)  
Старый 23.08.2015, 07:19
Аватар для Erolast
Профессор
Отправить личное сообщение для Erolast Посмотреть профиль Найти все сообщения от Erolast
 
Регистрация: 24.09.2013
Сообщений: 1,436

Сообщение от trikadin Посмотреть сообщение
Erolast, можно подхачить.

---------------------------------------------------------------------------------

Типа линия.

UPD: Хотя на фуррифоксе говёно :с Как вариант -- поискать какой-нибудь неразрывный пробел, который местным парсером не вырезается.
Тогда уж проще сразу U+2500 (или толстый U+2501) из box-drawing characters задействовать, он позволяет нарисовать неразрывную черту:
────────────────

Правда, при длине > 16 гребаный форум почему-то превращает всё в кракозябры.
Ответить с цитированием
  #1407 (permalink)  
Старый 25.08.2015, 17:18
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Вопрос к тем, кто работал с документно-ориентированными БД. В частности PouchDB

есть сущность в виде гномика объекта:
// contact
{
    "name": "string"
    "posts": [
        {
            "message": "string",
            "date": "string",
            "attachments": {
                "foo.txt": {
                    "type": "string",
                    "data": "base64"
                }
            }
        }
    ]
}

в которой будут размножаться контакты, посты, вложения. Как правильней всего хранить в бд?

1. Создать бд contacts и пихать туда контакты со всеми данными, но тогда при изменении контакта придется сохранять весь контакт. Правильно ли это?

2. Или создать базы contacts, posts и связать их по id? Но тогда это уже будет похоже на реляционную модель.
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #1408 (permalink)  
Старый 25.08.2015, 18:42
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

2-й путь правильный, конечно.

Суть же не в том, чтобы не быть как реляха, а в том, что у тебя нету жесткой завязки на структуру данных -- если ты захочешь что-то поменять, это будет просто.

Хороший путь, кстати -- это у контакта есть ID, а у поста есть поле, скажем, createdBy, в котором хранится значение ID контакта-создателя. Контакт ничего не знает о постах (это только информация о нем самом), посты знают ID того, кто их создал, но больше ничего о нем не знают.

Оговорюсь, что это актуально для монги, но, думаю, для этой базы тоже верно.
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)

Последний раз редактировалось trikadin, 25.08.2015 в 18:46.
Ответить с цитированием
  #1409 (permalink)  
Старый 25.08.2015, 20:48
Аспирант
Отправить личное сообщение для MakeMeFeel Посмотреть профиль Найти все сообщения от MakeMeFeel
 
Регистрация: 08.08.2015
Сообщений: 43

Сообщение от nerv_
Как правильней всего хранить в бд?
Правильней так, как говорит баланс. Всё зависит от количества обращений к записям и таблицам. Нужно нарисовать схему и посчитать количество запросов к БД и прикинуть нагрузку. Нагрузка будет либо на выборку из БД (обычно за это отвечает сама БД), либо на сервер (обработчик). Поэтому правильней выбирать БД под задачу. В остальном как написал trikadin.

Сообщение от trikadin
это актуально для монги
и для остальных БД тоже не критично
Ответить с цитированием
  #1410 (permalink)  
Старый 25.08.2015, 22:48
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

trikadin, спасибо.

Сообщение от MakeMeFeel
либо на сервер
сервера не будет, все на клиенте
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Смишных картинок тред megaupload Оффтопик 3447 03.07.2023 09:47
React'а тред melky Оффтопик 246 13.11.2016 08:07
Webpack'а тред nerv_ Сборка проекта, утилиты 58 07.05.2016 13:46
Смешных историй тред monolithed Оффтопик 11 04.03.2015 04:20
Смишных видео с намеком тред godofjavascript Оффтопик 4 30.12.2012 23:50