js从一个函数重新分配一个值给多个已经声明的变量[重复]
Posted
技术标签:
【中文标题】js从一个函数重新分配一个值给多个已经声明的变量[重复]【英文标题】:js reassign a value to multiple already declared variables from a function [duplicate] 【发布时间】:2021-07-24 18:08:42 【问题描述】:我需要重新分配两个不同变量的值。我的代码是这样的:
const func = () =>
do something;
return a, b
然后我在 if/else 块之外用 let 声明这两个变量:
let a = b = '';
在 if/else 中,我需要将函数返回的值赋给两个变量:
if(condition)
a, b = func();
如何将函数返回的值重新分配给变量?
【问题讨论】:
这能回答你的问题吗? Return multiple values in javascript? 和:***.com/questions/29044427/… 它在声明变量时有效,但问题是我需要在 if/else 块之外声明它们,而在内部我需要重新分配函数的值。由于某些原因,它给了我一个错误 【参考方案1】:您只需在赋值周围添加括号,即可将其解析为表达式而不是块。 MDN 给出了这个例子:
let a, b;
(a, b = a: 1, b: 2);
所以你需要
// For example
let a, b;
const func = () => (a: 1, b: 2);
(a, b = func());
【讨论】:
【参考方案2】:你说的是错误,我们没看到,下次请发https://***.com/help/minimal-reproducible-example。
这是可以做到的:
const func = () =>
return ["a", "b"]
let a, b
if (true)
const res = func()
a = res[0]
b = res[1]
console.log(a)
console.log(b)
【讨论】:
那是两次调用函数,这是不可取的。 @Bergi 对不起,我的主,现在好点了吗?以上是关于js从一个函数重新分配一个值给多个已经声明的变量[重复]的主要内容,如果未能解决你的问题,请参考以下文章