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

Вопрос:

В методах компонента Vue я читаю этот код, где функция определяется таким образом

methods : {
onEditorChange({ editor, html, text }) {
console.log('editor change!', editor, html, text)
this.content = html
}
}

Я проверил код, и он работает. Можем ли мы объявить формальные параметры для такой функции? Вы можете найти фрагмент кода в https://github.com/surmon-china/vue-quill-editor

Лучший ответ:

Это называется Destructuring.

От: http://2ality.com/2015/01/es6-destructuring.html#parameter-handling

В ECMAScript 5 youd реализует selectEntries() следующим образом:

function selectEntries(options) {
    options = options || {};
    var start = options.start || 0;
    var end = options.end || getDbLength();
    var step = options.step || 1;
    ···
}

В ECMAScript 6 вы можете использовать деструктурирование, которое выглядит следующим образом:

function selectEntries({ start=0, end=-1, step=1 }) {
    ···
};

Оцените статью
TechArks.Ru
Добавить комментарий