这个为什么输出400?

confirmAname 2013-06-08 12:45:02

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

</head>
<body>
<script>
var a=new Array(3);
a[0]=function(x){return x*x};
a[1]=20;
a[2]=a[0](a[1]);
</script>
<a href="javascript:alert(a[2]);">输出a[2]的值</a>
</body>
</html>

数组a的下标为2的对应的值为什么是400?a[0]是一个函数,a[1]为20,乘积为什么变成了400?
...全文
84 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
confirmAname 2013-06-08
  • 打赏
  • 举报
回复
引用 1 楼 jslang 的回复:
20*20本来就是400啊
擦!a[1]是作为a[0]的参数,因为a[0]是函数。我将函数调用看成两个数组元素的乘积了!内牛满面
天际的海浪 2013-06-08
  • 打赏
  • 举报
回复
20*20本来就是400啊

87,915

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧