В чем разница между методом и функцией?

Что такое метод? А что есть функция? Какая разница?


Функция живет сама по себе:

const bark = () => {
  console.log('wof!')
}

bark()

или же

function bark() {
  console.log('wof!')
}

bark()

Метод - это функция, назначенная свойству объекта:

const dog = {
  bark: () => {
    console.log('wof!')
  },
}

dog.bark()

Метод может получить доступ к свойствам объекта, но только если это обычная функция, а не стрелочная функция:

const dog = {
  name: 'Roger',
  bark: function () {
    console.log(`I am ${this.name}. wof!`)
  },
}

dog.bark()

Скачать мою бесплатнуюРуководство для начинающих по JavaScript


Больше руководств по js: