Наблюдая странное поведение в моей карте функции:функция Карта возвращения массива с индексом вместо значения строки
let tpl = ({x}, y = `This is ${x}`) => y;
console.log(tpl({x:5})); //correctly returns 'This is 5'
console.log([{x:1}, {x:9}].map(tpl)); //expecting array of strings, instead get [0, 1]
можно «исправить» это, опуская переменную y
по умолчанию, и возвращение строка шаблона непосредственно из tpl. Тем не менее, я бы предпочел сделать инициализацию таким образом и не могу понять, почему она не будет работать.
Кажется, странная аномалия для меня, кто-то имеет представление о чем-то, что мне не хватает?
Почему именно вы предпочитаете, чтобы инициализировать его с 'y', когда вы можете просто вернуть шаблон строку непосредственно, как вы сказали? Это потому, что вы иногда передаете в необязательную строку шаблона, чтобы переопределить значение по умолчанию? –
Это своего рода надуманный пример того, что я хочу сделать (например, например, может быть результатом вызова функции), но в основном это касается эстетики; Мне нравится концепция одного символа. – Conqueror