从JavaScript函数返回多个变量?
在python中,要返回多个变量,我可以--从JavaScript函数返回多个变量?,javascript,function,return-value,Javascript,Function,Return Value,在python中,要返回多个变量,我可以-- 如果函数只能返回一个返回值,那么如何使用javascript实现相同的结果?(我假设使用数组?您需要使用数组或对象 例如: function test() { return {foo: "bar", baz: "bof"}; } function test2() { return ["bar", "bof"]; } var data = test(); foo = data.foo; baz = data.baz; data =
如果函数只能返回一个返回值,那么如何使用javascript实现相同的结果?(我假设使用数组?您需要使用数组或对象 例如:
function test() {
return {foo: "bar", baz: "bof"};
}
function test2() {
return ["bar", "bof"];
}
var data = test();
foo = data.foo;
baz = data.baz;
data = test2();
foo = data[0];
baz = data[1];
从技术上讲,返回的元组中有两个字段,仍然是一个值。我不熟悉Javascript,但如果有某种数组或结构可以使用,那就太理想了。如果返回的两个整数是素数,则可以返回它们的乘积:PMakoto的评论很好。Python也只能返回一个值。JavaScript没有
元组类型,因此可以使用对象(例如dict
)或数组(例如列表
)作为替换。另外,JavaScript没有序列解包(这使得Python中的x,y=tuple
成为可能),因此分解必须长期进行。另一个选项(但没有那么好):function test(ret){ret.a=42;ret.b=43;}
@AtesGoral在传入“非对象”类型时不起作用(如果没有提供参数,这将是一个令人讨厌的例外)。这也让我有点想吐。@pst这假设有人故意传入一个对象。这种方法有它的用途,特别是当你从多个来源将一组参数收集到同一个池(对象)中时。什么是python dict的等价物,{'a':'b','c':'d'}
,在js?@David542中调用,有时也称为关联数组,而这个代码片段可能会解决这个问题,确实有助于提高您的文章质量。请记住,您是在将来为读者回答这个问题,那些人可能不知道您的代码建议的原因。
function test() {
return {foo: "bar", baz: "bof"};
}
function test2() {
return ["bar", "bof"];
}
var data = test();
foo = data.foo;
baz = data.baz;
data = test2();
foo = data[0];
baz = data[1];
function foo(){
return ["something","something else","something more","something further"];
}
let [a,b,c,d] = foo();