三元表达式中使用扩展运算符报错?

const flag = true
const arr = [];
arr.push(flag? ...[1,2,3]: 4)

为什么这种场景使用扩展运算符会报错呀?

阅读 1.6k
1 个回答
✓ 已被采纳

扩展运算符报错是因为你写的语法不对。扩展运算符(...)应该用于数组字面量或函数调用的参数列表中,而不是在三元表达式中。如果你想在这种情况下使用扩展运算符,可以考虑使用数组的concat方法,将两个数组连接起来。

const flag = true;
const arr = [];

const newArr = flag ? [1, 2, 3] : [4];
arr.push(...newArr);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题