js中的函数

函数定义方法

声明定义法

function 函数名(形参1,形参2,...,形参n){
	语句组;
}

函数表达式定义法

这种方法将一个函数赋值为一个变量,
格式

var 函数名=function(){
	代码块;
}

创建对象定义法

格式

function 函数名(){
	代码块;
}

箭头函数

ES6中的新增项,函数表达式的简化版,使用格式

param=>expression
//或
(param1,param2)={
	代码块
}

注意:

  1. 箭头函数以"=>"分隔,左边是参数,右边是函数体
  2. 参数可以是0个或多个参数,当是多个参数时,需要使用括号括起来
  3. 当函数体是一个表达式时,表达式的值就是该箭头函数的返回值;当函数体是一个代码块时,返回值与普通函数一样
function sayhello(name1,name2){
	return name1+"和"+name2+"是好朋友"
}
//相当于
(name1,name2)=>name1+"和"+name2+"是好朋友"

函数返回值

return 语句

return [表达式]

表达式的值即为要返回的值;表达式也可以省略,这样该函数的返回值为undefined

//返回两个数之和
function _sum(a,b){
	return (a+b);
}
// 返回两个数中的最大值
function _max(a,b){
	var the_max=a>b ? a:b;
	return the_max;
	}

在html中调用js函数方法

  1. 简单调用

  2. 调用表达式中调用:有返回值的函数常常放在某一个表达式中参与表达式的运算

  3. 事件响应中调用:页面加载、用户点击等都会产生事件,当事件产生时,js可以调用某个函数来响应这个事件

  4. 链接调用:在<a>标签中,使得href属性等于"javascript:要定义的函数名"来调用函数

<!--假设我们已经定义了test()函数-->
<a href="javascript:test();">点击该链接</a>

一个小demo

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>这是一个html5 demo</title>
    <style>
    	a:hover{color:orange;font-size:15px;}
    </style>
    <script>
    	function test3(){
    		// var x="";
    		var invalue=prompt("请输入一个数值");
    		document.getElementById("demo2").innerHTML="您输入的数字的平方为:"+Math.pow(invalue,2);
    	}
    	function test4(){
    		alert("这是一个通过链接调用函数的例子");
    	}
    </script>

</head>
<body>
	<button onclick="test3()">点击输入数字</button>
	<p id="demo2" style="color:#b49123;"></p>

	<hr/>
	<a href="javascript:test4();">点击以查看例子</a>
</body>
</html>

Chrome浏览器运行结果
在这里插入图片描述

一些比较特殊的函数

嵌套函数

在函数内部定义另外一个函数

function 函数名(参数1,参数2){
	function 子函数名(){
		函数体;
	}
}

嵌套函数实例

function add_(num1,num2){
	function add_mini(){
		alert("两数之和为"+(num1+num2));
	}
	return add_mini();
}

递归函数

一个函数在其函数体中调用自身,这种函数称为递归函数

function 递归函数名(参数1){
	递归函数名(参数2);
}

递归函数实例

// 一个计算阶乘的函数
function factorial(n){
	if (n==0||n==1){
		return 1;
		}
	else{
		return factorial(n-1)*n;
		}	
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

夺笋123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值