在前期js学习中,有时我们会遇到需要返回多个函数值的情况,作为初学者,可能会有以下操作:
错误操作:
//想用return返回num1和num2的值
function num() {
let num1 = 111, num2 = 333
return num1, num2//错误写法
}
let result = num()
console.log(result)//此时只会返回num2的值,打印结果为333
//想用return返回num1和num2的值
function num() {
let num1 = 111, num2 = 333
return num1
return num2
}
let result = num()
console.log(result)//此时只会返回num1的值(return后面的代码不会执行,即return num2不会执行),打印结果为111
正确方法:
1.数组方法
function num() {
let num1 = 111, num2 = 333
let arr = [num1, num2]//创建一个数组,保存num1,num2的数值
return arr //返回数组arr
}
let result = num()
console.log(result)//此时打印结果是 (2) [111, 333]
2.对象方法
2.1 常规操作
function num() {
let num1 = 111, num2 = 333
let obj = { num1, num2 } //创建个对象
return obj //返回对象
}
let result = num()
console.log(result) //此时打印结果是 {num1: 111, num2: 333}
2.2 省去声明对象操作
function num() {
let num1 = 111, num2 = 333
return { num1, num2 } //省去声明对象操作
}
let result = num()
console.log(result) //此时打印结果是 {num1: 111, num2: 333}
仅列上述方法,以供参考使用。