我正在從物件中學習陣列破壞,然后它應該回傳兩個值,正如命令函式所說的那樣,但它沒有
const restaurant = {
name: 'Classico Italiano',
location: 'Via Angelo Tavanti 23, Firenze, Italy',
categories: ['Italian', 'Pizzeria', 'Vegetarian', 'Organic'],
starterMenu: ['Focaccia', 'Bruschetta', 'Garlic Bread', 'Caprese Salad'],
mainMenu: ['Pizza', 'Pasta', 'Risotto'],
order: (starterIndex, mainIndex) => {
return [this.starterMenu[starterIndex], this.mainMenu[mainIndex]];
},
};
console.log(restaurant.order(2, 2));
我在瀏覽器控制臺和節點 js 控制臺中得到了這個:
**
Uncaught TypeError: Cannot read properties of undefined (reading '2')
at Object.order (main.js:153:33)
at main.js:157:24
**
uj5u.com熱心網友回復:
箭頭函式沒有自己的“this”,您可以使用常規函式宣告,看看這篇文章是否有幫助: this inside object
const restaurant = {
name: 'Classico Italiano',
location: 'Via Angelo Tavanti 23, Firenze, Italy',
categories: ['Italian', 'Pizzeria', 'Vegetarian', 'Organic'],
starterMenu: ['Focaccia', 'Bruschetta', 'Garlic Bread', 'Caprese Salad'],
mainMenu: ['Pizza', 'Pasta', 'Risotto'],
order: function(starterIndex, mainIndex) {
return [this.starterMenu[starterIndex], this.mainMenu[mainIndex]];
},
};
console.log(restaurant.order(2, 2));
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/533728.html
標籤:javascript节点.js数组变量javascript对象
