<九>JavaScript中函数,函数的定义方式,形参、实参和返回值

JavaScript中的函数,也是一个对象,函数对象有所有普通对象有的性质。还可以在这个对象中封装一些功能,保存一些代码,在需要的时候调用这些代码,用typeof查看时,会返回类型:function。

定义函数的方式:

方式一:使用构造函数

	<script type="text/javascript">
			var fun = new Function("console.log('这是一个函数');");
			fun()
		</script>

将要封装的代码以字符串的形式传递给构造函数,在调用的时候执行封装的代码。

方式二:使用声明的方式创建函数(比较常见)

function [函数名称]([形参列表]) {
[函数要执行的语句]
}

方式三:使用函数表达式创建一个函数

<script type="text/javascript">
			function fun(){
				console.log("这是一个函数");
			}
			fun();
		</script>

方式三:使用函数表达式创建一个函数

	<script type="text/javascript">
			var fun=function(){
				console.log("这是一个函数");
			}
			fun();
		</script>

函数的形参和实参

在定义函数的时候,可以给函数的()中制定一个或者多个形参,多个形参之间用逗号分隔,这种声明形式就相当于在函数内部声明了对应的变量。

在调用函数的时候,可在()中制定实参,调用函数时,解析器不会检查实参类型,也不会检查实参的数量,多余的实参不会被赋值,缺少的实参会用undefined补齐。

<script type="text/javascript">
			function fun(a,b,c){
				console.log("这是一个函数,打印变量的值",a,b,c);
			}
			fun(1,2,3,4);
		</script>

		<script type="text/javascript">
			function fun(a,b,c){
				console.log("这是一个函数,打印变量的值",a,b,c);
			}
			fun(1,2);
		</script>

函数的返回值

可以使用return来设置函数的返回值,return的值将会作为函数的执行结果,可以定义一个变量来接收返回值。

在函数中,return后的语句都不会被执行,return后面不写任何值,或者没有return相当于返回undefined,return后面可以跟任意类型的返回值,也可以直接返回函数。

		<script type="text/javascript">
			function fun(a,b,c){
				console.log("这是一个函数,打印变量的值",a,b,c);
				return 123;
			}
			aa = fun(1,2);
			console.log("这个函数的返回值是",aa);
		</script>

		<script type="text/javascript">
			function fun(a,b,c){
				console.log("这是一个函数,打印变量的值",a,b,c);
				return fun;
			}
			aa = fun(1,2); //aa也是一个函数,也可以被调用
			console.log("这个函数的返回值是",aa);
			console.log("调用aa",aa(4,5));
		</script>

立即执行函数

定义后马上执行的函数,往往只能执行一次,立即执行函数也可以传参。

<script type="text/javascript">
			(function(){alert("我是一个匿名函数,且被马上执行了")})();
		</script>

如果一个函数作为一个对象的属性保存,那么我们就称这个函数是这个对象的方法,调用函数就是调用对象的方法。

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值