Size: a a a

Front-end developers

2020 June 04

NM

Niccolo Machiavelli in Front-end developers
vadym serduk
Чего?. В js.learn  про статический метод . Так и написано
Скинь мне как ты прототип проверяешь у этих классов, какой у тебя output?
источник

VZ

Vasiliy Zozulya in Front-end developers
статические методы необходимы только для того чтобы использовать их без создания класса.
источник

NM

Niccolo Machiavelli in Front-end developers
Vasiliy Zozulya
статические методы необходимы только для того чтобы использовать их без создания класса.
class User {

 constructor(name) {
   this.name = name
 }

 sayHi() {
   return `Hi, ${this.name}`
 }
 sayHello = () => `Hello, ${this.name}`
}

const jhon = new User('Jhon')

console.log(jhon.sayHello())
источник

NM

Niccolo Machiavelli in Front-end developers
Почему я там могу юзать this
источник

NM

Niccolo Machiavelli in Front-end developers
у стрелочной
источник

NM

Niccolo Machiavelli in Front-end developers
const obj = {
 name: 'Vasya',
 sayHi: () => `Hi, ${this.name}`
}

console.log(obj.sayHi()) // undefined
источник

V

Valentino in Front-end developers
/stat@combot
источник

C

Combot in Front-end developers
Total messages: 108784
источник

V

Valentino in Front-end developers
ребят, привет
источник

NM

Niccolo Machiavelli in Front-end developers
class User {

 constructor(name) {
   this.name = name
 }

 sayHi() {
   return `Hi, ${this.name}`
 }
 sayHello = () => this
}

const jhon = new User('Jhon')

console.log(jhon.sayHello()) // User { sayHello: [Function: sayHello], name: 'Jhon' }
источник

V

Valentino in Front-end developers
хочу для себя открыть мир js, сориентируйте по литературе для чайников?
источник

vs

vadym serduk in Front-end developers
Niccolo Machiavelli
class User {

 constructor(name) {
   this.name = name
 }

 sayHi() {
   return `Hi, ${this.name}`
 }
 sayHello = () => `Hello, ${this.name}`
}

const jhon = new User('Jhon')

console.log(jhon.sayHello())
Ну стрелочная функции тут ссылается  на сам конструктор класса
источник

vs

vadym serduk in Front-end developers
Niccolo Machiavelli
const obj = {
 name: 'Vasya',
 sayHi: () => `Hi, ${this.name}`
}

console.log(obj.sayHi()) // undefined
Хотя почему здесь так и с учётом что у стрелочной Функции нет this. Почему он не ссылается на обтект
источник

РР

Рома Решетов... in Front-end developers
Привет подскажите..
В Figma , нажимаю на элемент он должен его выделять, а он вместо этого выделяет общий фон...
И приходится каждый элемент искать в дереве
источник

NN

Nik Nik in Front-end developers
Рома Решетов
Привет подскажите..
В Figma , нажимаю на элемент он должен его выделять, а он вместо этого выделяет общий фон...
И приходится каждый элемент искать в дереве
Скорее всего с psd кто-то накуралесил делов, попробуй открыть в avocode или другом редакторе
источник

IH

Ivan Hrynevytskyi in Front-end developers
Niccolo Machiavelli
Почему я там могу юзать this
У стрелочных функций нема контекста
источник

D

Dmitry in Front-end developers
источник

NM

Niccolo Machiavelli in Front-end developers
Ivan Hrynevytskyi
У стрелочных функций нема контекста
Получается что в классах он есть)
источник

VZ

Vasiliy Zozulya in Front-end developers
короче писюнчики, объясняю всем. То что вы делаете со стрелочными функциями это новая фича вроде бы из es2017. Хз везде ли будет работать без бабеля, но не суть. Когда вы пишите свойство класса через стрелочную функцию
class User {

 constructor(name) {
   this.name = name
 }
 sayHello = () => this.name
}

это тоже самое что
class User {
  constructor (name) {
     this.name = name;
     this.sayHello = () => {
             return this.name;
     };
   }
}

и это полное говно, потому что классы наследники не смогут наследовать через супер данные функции. Они будут инициализироваться только через конструктор и их не будет в прототипе.
источник

VZ

Vasiliy Zozulya in Front-end developers
если хотите более подробно почитать, как это работает под капотом, то вот вам статейка, прям про то что вы мудрите
источник