javacripte函数参数的问题

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>函数传参</title>
<script type="text/JavaScript">
   function add3(x,y,z)                
    {
      sum = x + y +z;
      document.write(x+"、"+y+"、"+z+"和:"+sum+"<br/>");} 
  
</script>
</head>
<body>
<input type="button" value="TEST" onclick =add3(   )>
</body>
</html>

我想请教个问题,假如我要在 onclick=add3(),这里实现一个功能就是,点击按钮后,调用函数propmt()出现一个输入框,然后我再输入框里输入3,4,5。这组参数会被调用到add3()这个函数中。这个想法可以实现吗?

如果还有方法能让实现建立一个数组[[3,4,5],[5,7,6],[9,7,4]],让add()能直接调用这个二维数组,能否实现呢?求教高手指教


uwenhao2008
浏览 1585回答 3
3回答

我仍旧在这里

<input type="button" value="add3" onclick="add3();">    <script>                function add3(){            var str = prompt("please enter number!");            var x =parseInt(str.charAt(0)) , y=parseInt(str.charAt(1)), z=parseInt(str.charAt(2));            var sum = x + y +z;            document.writeln(x+"、"+y+"、"+z+"和:"+sum);                       }</script>

迷途的马尔斯

第一个问题可以实现,要注意一下你的代码,你的sum变量是没有声明的,这就意味着你的sum是全局变量,后面会带来内存泄露的问题;至于你想数组元素相加,可以参考ECMA6里面forEach()的方法

木子舟义

可以实现。onclick = " add3() "   要加引号。 数组里有个map遍历方法,你可以去查一下。
打开App,查看更多内容
随时随地看视频慕课网APP