【发布时间】:2021-04-13 17:38:36
【问题描述】:
我只是了解可选链和空值合并的组合。
这是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'],
openingHours: {
thu: {
open: 12,
close: 22,
},
fri: {
open: 11,
close: 23,
},
sat: {
open: 0, // Open 24 hours
close: 24,
},
},
orderPizza(ing1, ing2) {
console.log(`you have ordered your pizza with ${ing1} and ${ing2}`);
}};
当我试图检查该方法是否存在时,它无论如何都会打印出它们。我做错了什么?
console.log(restaurant.orderPizza?.('some', 'something') ?? 'no method exist');
【问题讨论】:
-
你喜欢打印什么?
-
你得到什么确切,你期待什么确切?
-
我得到了这两个值,而我应该只得到第一个,如果它存在或最后一个,'不存在方法',如果它不存在。
标签: javascript methods optional-chaining nullish-coalescing