Varyen
так суй ему с транспайлингом тоже :)
Varyen
по статистике то я так понимаю у тебя в основном хром и подобное
Nikita
фичи же постепенно вводятся, вот хотелось бы чтобы браузер только непонятные ему фичи транспалил, а остальное нативно
Varyen
вообще, если мы сейчас говорим не о поддержке нового синтаксиса, то все так и работает
Nikita
также хочу и с css
Varyen
да и это имхо экономия на спичках
Nikita
нужно стремиться к совершенству
Nikita
допустим на мобилках транспайлить код не вариант, там тупо выдаем уже готовый ssr js
Bohdan
я пока за пивом схожу
raw-loader мне нужен был. во
Александр
Александр
Подскажите почему в данном коде, когда мы описываем obg.move нас надо писать this.name, а не просто name, ведь и без this всё работает? Про конструкторы не пишите, я знаю что этот кол модно оптимизировать, интересен данный момент.
Denis
Довольно интересная манера - спустя 3 минуты после того, как ты задал вопрос в новичковом чате, копировать его в "большой" чат
Александр
Каждому параметру name, color, speed надо дописывать this, и без этого работает ведь в чем подвох
Neyron
Ключевое слово this получает ссылку на этот объект.
Александр
Обычная манера
Александр
Там спросил
Александр
Тут спросил
Александр
То есть если будет другой объект будет путаница
Neyron
Александр
Но мы же в параметрах пишем значения этих свойств
Nikita
измени цвет у машины
Nikita
потом сделай audi.move
Anonymous
raw-loader мне нужен был. во
сомневаюсь что он тебе нужен
Bohdan
ну да, можно было на сдн ссылку вставить
Aleksey
тут нет класса
имитация есть. и область видимости есть. name принад куче, которая создается вызовом Car() и виден только коду, который объявлен в той куче.
Stepan
у него вроде нету new
Anonymous
имитация есть. и область видимости есть. name принад куче, которая создается вызовом Car() и виден только коду, который объявлен в той куче.
область видимости определена функцией, иммитация класса? ну я хз обычная фабрика, возвращает объект
Stepan
можешь кодом скинуть?
Александр
Сейчас
Александр
var Car = function(name, color, speed) { var obj = { name: name, color: color, speed: speed }; obj.move = function() { console.log(this.name + " " + this.color + " " + "is move " + this.speed); }; return obj; }; var audi = Car("s", "red", 200); console.log(audi.color);
Aleksey
область видимости определена функцией, иммитация класса? ну я хз обычная фабрика, возвращает объект
немного переписать исходник чтоб создавать объект через new Car() и будут классы. А внутренности одинаковые.
Александр
да я в курсе типо конструктор но мне было интересно зачем писать вот так console.log(this.name + " " + this.color + " " + "is move " + this.speed); };
Александр
если можно вот так
Stepan
var Car = function(name, color, speed) { var obj = { name: name, color: color, speed: speed }; obj.move = function() { console.log(name + " " + color + " " + "is move " + speed); }; return obj; }; var audi = Car("s", "red", 200); audi.move(); audi.color = 'blue'; audi.move();
Александр
console.log(name + " " + color + " " + "is move " + speed); };
Stepan
понимаешь мысль?
Anonymous
ну сделай в move и будет obj.name
Anonymous
и будет менятся
Aleksey
тут как бы конкретный пример у нас
в js вообще нет классов, а только имитация их поведения.
Александр
ну что this что без this меняется значения
Александр
audi.name = 'Audi 2'; audi.move();
Anonymous
ну что this что без this меняется значения
где оно менятся? в примере? нет оно не меняется
Александр
почему сейчас вызываю консоль и да меняется
Aleksey
audi.name = 'Audi 2'; audi.move();
функция move которая выводит имя, не будет выводить новое имя "Audi 2"
Anonymous
код прямо из скриншота?
Anonymous
если да то не меняется
Anonymous
чтобы менялось надо в move поменять name на obj.name
Александр
var Car = function(name, color, speed) { var obj = { name: name, color: color, speed: speed }; obj.move = function() { console.log(name + " " + color + " " + "is move " + speed); }; return obj; }; var audi = Car("s", "red", 200); console.log(audi.color); audi.color = "blue"; console.log(audi.color); console.log(audi);
Александр
сначала консоль показывает red
Александр
потом blue
Александр
а потом обьект с последдним цветом
Александр
потом до писал this все с работало
Anonymous
Александр
obj.move = function() { console.log(name + " " + color + " " + "is move " + speed); };
Александр
this.name
Александр
this.color
Александр
зачем если и без этого меняются значение
Александр
obj.move = function() { console.log(this.name + " " + this.color + " " + "is move " + this.speed); };
Александр
бинго
Александр
я только учусь простите меня ребятки
Александр
за тупняк
Александр
теперь понял
Anonymous
теперь понял
что стало понятней?
Александр
move  не сработает на изменения без this
Nikita
вот вот я про это и писал
Александр
спасибо
Nikita
audi.move надо сделать
Stepan
var Car = function(name, color, speed) { var obj = { name: name, color: color, speed: speed }; obj.move = function() { console.log(this.name + " " + this.color + " " + "is move " + this.speed); }; return obj; }; var audi = Car("s", "red", 200); (audi.move && audi.move)();
Aleksey
move  не сработает на изменения без this
внутри функции move name и this.name могут оказаться с разными значениями.
Александр
да теперь пазл собрался но в переди изучение prototype
Александр
только бы не тупить )))))