为什么控制台显示的结果是NaN

来源:3-5 自由编程

PADAopanda

2021-07-18 11:16:25

相关代码:HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script type="module">
import addFn from './base.js';
import { num1,num2 } from './data.js';
let sum = addFn(num1+num2)
console.log(sum);
</script>
</body>
</html>


相关代码:base.js

function addFn(num1,num2){
return num1+num2;
}
export default addFn;


相关代码:data.js

var num1 = 5;
var num2 = 10;
export {num1,num2};


相关截图:

http://img.mukewang.com/climg/60f39d0109bd603510540284.jpg

写回答

1回答

好帮手慕然然

2021-07-18

同学你好,是因为代码中调用addFn()方法时,同学传入的参数如下:

let sum = addFn(num1 + num2)
第一个参数位置传入的是num1+num2的和,第二参数位置没有传参,默认为undefined,undefined与数字相加结果为NaN,所以控制台显示的结果是NaN。

正确传参方式应为:分别传入num1和num2,而不是它们相加的和,参考代码如下:

http://img.mukewang.com/climg/60f3a0a609cab55206180279.jpg

祝学习愉快!

0

0 学习 · 15276 问题

查看课程