首页 > 解决方案 > 如何根据条件分配多个变量

问题描述

我想根据条件分配多个变量,但它不断收到错误'SyntaxError: Identifier 'end' has already been declared'

两个函数都返回一个时间戳。

我之前的代码只是:

let [start, end] = getPeriod(period)

但现在我需要根据条件分配

let [start, end] = [null,null];

  if(period != 'custom') {
    [start, end] = getPeriod(period)
  } else {
    [start, end] = getCustomPeriod(startDate, endDate);
  }

但它不起作用。有什么建议吗?

标签: javascript

解决方案


该错误意味着该变量end已在您的代码中的其他地方声明,搜索它或在您的新代码中重命名该变量。

此外,您可以使用三元组使其成为单线:

const [ start, end ] = (period !== 'custom') ? getPeriod(period) : getCustomPeriod(startDate, endDate);

推荐阅读