ZXJ03
2015-10-16 16:14
结果如下:
5、8、3和:16
undefined7、1、4和:12
undefined
定义的函数没有返回值,
我觉得你这个写法有问题
函数里本来就有想html网页输出的document.write
在下面直接调用函数就会输出
如果在函数输出的外面再加document.write是想要输出什么呢?
函数本身并没有return
<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>函数传参</title> <script type="text/JavaScript"> function add(x,y,z) { sum = x + y +z; document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>"); return 0; } add(5,8,3); add(7,1,4); document.write(add(5,8,3)); </script> </head> <body> </body> </html>
以上代码是当函数值有返回值时的情况,如果将
”return 0“中的0去掉的话会出现undefined;
由此应该是可以看出
document.write(add(5,8,3));
是输出调用add(5,8,3)这个函数之后的的函数返回值。
document.write多写了。
下面方法直接调用add3,不要有document.write了,这个方法会把add3的返回结果输出,而function没有返回值,所以是undefined,对应的<br/>换行就是那个结果了。
函数内部正常执行了,
但是外部函数调用时没有返回值,所以是undefined。
JavaScript进阶篇
468194 学习 · 21891 问题
相似问题