关于JavaScript中函数返回值赋值相关代码的疑问
解答
- 你对
change函数的核心误解是:函数定义中的num是形参(占位参数),没有默认值,不会固定取0参与计算,因此函数本身不会固定返回5/3 ≈ 1.6的结果。 - 调用
change(10)时传入的10,会被赋值给形参num代入公式计算:(10 + 5) / 3 = 5,最终changed变量的取值为5。 - 你误以为存在的1.6是默认传0给
change才会得到的结果,你调用时传入10是指定本次计算的参数值,不存在“覆盖原本1.6”的说法,因为函数本身没有固定的默认返回值。 - 这段是教学演示代码,核心目的是讲解「将函数返回值赋值给变量」的语法规则,所以用了极简的运算逻辑。真实开发中函数会封装更复杂的可复用逻辑,你只需要传入不同参数就能拿到对应的计算结果,不需要每次都手动写一遍运算公式,这就是函数的价值所在。如果只是要给变量赋值10,当然可以直接写
var changed = 10,但这就达不到演示知识点的作用了。
内容的提问来源于stack exchange,提问作者Scotty_AJ
相关产品推荐
相关产品推荐

