热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【JavaScript】函数的定义与调用

1、定义函数方式一functionmyFunction1(p1,p2){returnp1*p2;该函数返回p1和p2的乘积}方式二varmyFunction2function(p1

1、定义函数

//方式一
function myFunction1(p1, p2) {
return p1 * p2; // 该函数返回 p1 和 p2 的乘积
}
//方式二
var myFunction2=function(p1, p2){
return p1 *p2;
}
//两种方式定义的函数使用起来没有区别

函数的调用

函数中的代码将在其他代码调用该函数时执行:



  • 当事件发生时(如当用户点击按钮时)

  • 当 Javascript 代码调用时

  • 自动的(自调用)

注:



  • 函数执行到return结束,但如果没有执行return,也会返回结果(返回undefined)。



  • 调用函数时填写的实参多了不影响执行,少了,返回值会出问题(比如返回NaN),反正就是都不会报错。



  • 调用函数加了()时,引用的是函数结果,如果不加,引用的是函数对象(返回值是函数的定义)。如:





运行结果:

image


arguments参数


arguments是一个JS的一个关键字;

代表,函数传递进来的所有参数,是一个数组!


rest


ES6引入的新特性,获取除了已经定义的参数之外的所有参数。

rest参数只能写在最后面,必须用…标识。

function a(a,b,...rest){}

2、匿名函数

匿名函数有两种用法:



  • 赋值

  • 自动执行

匿名函数必须以以上两种方式定义和使用,如果只单独定义匿名函数的话,会报错。


赋值

声明一个匿名函数直接赋值给某变量或事件

window.Onload= function(){
alert('hello');
};

自动执行

定义完成后会自动执行。一般在函数前加一个!(+-~也行),函数结尾加括号(),括号()里面可以填写需要的实参。以下给出几个例子。

//1.使用 !开头,()结尾,结构清晰,不容易混乱,推荐使用;
!function(){
document.write('hello');
}();
//2.用()将匿名函数与调用的()合为一个整体,官方推荐使用;
(function(){
document.write('hello');
}());
//3.用()包裹函数,无法表明函数与之后的()的整体性,不推荐使用。
(function(){
document.write('hello');
})();
//4.放在中括号[]内执行
[function(){
document.write('hello');
}()];
//5.使用 + 运算符
+function(){
document.write('hello');
}()
//6.使用 - 运算符
-function(){
document.write('ni hao');
}()
//7.使用波浪符 ~
~function(){
document.write('hello');
}()
//8.使用 void
void function(){
document.write('hello');
}()


推荐阅读
author-avatar
fdasfwgafaweg
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有