我试图用javascript返回两个值。有可能吗?
var newCodes = function() {
var dCodes = fg.codecsCodes.rs;
var dCodes2 = fg.codecsCodes2.rs;
return dCodes, dCodes2;
};
最佳答案
不可以,但可以返回包含值的数组:
function getValues() {
return [getFirstValue(), getSecondValue()];
}
然后你可以像这样访问它们:
var values = getValues();
var first = values[0];
var second = values[1];
使用最新的ECMAScript 6 syntax*,您还可以更直观地对返回值进行解构:
const [first, second] = getValues();
如果要在每个返回值上加上“标签”(易于维护),可以返回一个对象:
function getValues() {
return {
first: getFirstValue(),
second: getSecondValue(),
};
}
要访问它们:
var values = getValues();
var first = values.first;
var second = values.second;
或使用ES6语法:
const {first, second} = getValues();
*有关浏览器兼容性,请参见this table。基本上,除了IE之外的所有现代浏览器都支持这种语法,但是您可以在构建时使用Babel之类的工具将ES6代码编译成与IE兼容的JavaScript。
关于javascript - 在JavaScript中返回多个值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55076919/