Javascript 函数能否返回两个值?

Javascript 函数能否返回两个值?,javascript,Javascript,函数能否返回两个值 {我在C中遇到过这一点}JavaScript中任何可能的东西都不能返回两个不同的值,但可以返回一个对象或数组。这是完全有效的,只要您为可能遇到代码的任何其他人记录行为。如果两个返回值真的相关,这会很有帮助。如果没有,则很难理解该函数。许多人认为,仅仅从一个对象返回一系列不同的值是一种不好的做法,因为函数的目的通常是执行一个可能返回离散值的离散操作 // As an object function() { return {val1: "value 1", val2: "va

函数能否返回两个值


{我在C中遇到过这一点}JavaScript中任何可能的东西都不能返回两个不同的值,但可以返回一个对象或数组。这是完全有效的,只要您为可能遇到代码的任何其他人记录行为。如果两个返回值真的相关,这会很有帮助。如果没有,则很难理解该函数。许多人认为,仅仅从一个对象返回一系列不同的值是一种不好的做法,因为函数的目的通常是执行一个可能返回离散值的离散操作

// As an object
function() {
  return {val1: "value 1", val2: "value 2"};
}

// As an array
function() {
  return ["value 1", "value 2"];
}

不是直接返回,但是没有人可以阻止您返回包含多个元素的
数组:

function modify(a,b) {
    return [a*2, b*2];
}

var res = multiple(5, 10);

console.log( res );
为了更进一步,我们可以使用这样一个“映射”结果来调用另一个方法。Javascripts
.apply()
在这方面非常方便

function add(v1, v2) {
    return v1 + v2;
}
我们可以打电话

add.apply( null, modify(2,4) );
这实际上是

add(4, 8) // === 12

请让全世界知道你为什么投反对票。我们都应该向你的无限智慧学习,陌生人!否决票是我的失误,现在改为赞成票。很抱歉现在如果我能找出为什么我投了反对票。。。编辑:我的刚被解开。