Javascript函数定义和函数调用区别

标签 javascript function arguments

HTML

<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
  <input type='button' name='test' id='test' value='Click'/>
</body>
</html>

Javascript

$(document).ready(function(){
  $('#test').on('click',function(){
    var a = 10;
   testFunction(a);
  });
});

function testFunction(a,b){
  alert(a);
}

这里,当我单击“Click”按钮时,它会警告 10。但是在函数调用中,我只有一个参数,而在函数定义中,我有两个参数。那么为什么它会警告该值,而不是产生有关参数数量的任何错误.?

最佳答案

这是因为在 Javascript 中,参数是可选的

它们有一个默认值,因此在伪代码中它将是

function testFunction(a = undefined,b = undefined){
  alert(a);
}

关于Javascript函数定义和函数调用区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17669044/

相关文章:

javascript - 使用回调在不同时间为同一元素设置动画

javascript - 设置 Extjs GridPanel 以允许从剪贴板粘贴

javascript - 如何在 Sequelize 模型上实现 'replyingTo' 和 'replies' 关联

javascript - 在 d3 中单击按钮执行 Javascript 文件

c++ - 当函数有多个参数时读取表会返回错误

arguments - 将参数列表中的类型实例传递到函数声明中(动态环境捕获)

C++ 尝试使用函数参数定义二维数组

javascript - 是否可以通过提供路径将文件从Electron应用发送到Express服务器?

python - Python中的函数编程

python - 代码出现故障?