- 函数
一、什么是函数
- 函数是一个工具,把同一种功能的代码放在一起
- 函数需要被使用
- 封装性+复用性
二、函数的分类
- 系统函数
- 自定义函数
三、函数的语法
function 函数名 (参数)//参数可有可无且必须是一个变量 { 功能是怎么实现的 }
- 函数声明的地方叫做形参
- 函数调用的地方叫做实参
四、函数封装的步骤
- 普通的实现这个功能
- 利用function装一个壳子
- 取函数名 命名规则和变量声明一样
- 考虑是否需要参数,参数可有可无
- 一定要调用函数
- 附上说明书 函数的功能和参数的说明
五、return
- 函数有的会得到一个结果。如Math.random()有的不会的结果如alert()这个结果就叫返回值
- 函数的返回值是函数执行的结果,函数的返回值也是可有可无的
- return的作用: 给函数一个结果 提前结束整个函数,return后的代码永远不会执行
六、局部变量
- 函数内的局部变量 从函数外无法访问
七、onclick = function(){
}是事件处理函数---函数只能被点击时候调用(系统调用)
八、一些函数封装
// 作用:封装一个获取元素的函数
// 参数: number id名 通过id名获取对象
// 返回值:获取的对象
function get(id){
// id 为变量 变量不能打引号
return document.getElementById(id);
}
// 作用:封装一个生成 min - max 之间的随机数的函数
// 参数:min:number 随机数区间的最小值
// max: number 随机数区间的最大值
// 返回值: number 一个min - max之间的随机数
function suiji(min,max){
var m = Math.floor(Math.random()*(max - min) + min);
return m;
}
// 作用:封装一个判断质数的函数
// 参数:number
// 返回值:boolean
function isZhi(n){
for(var i = 2; i < n; i++){
if(n % i === 0){
// 当i能被整除时,即i不是质数,return返回值为false,且结束函数
return false;
}
}
// 当循环全部正常循环结束,即i是质数,return返回值为ture,且结束函数
return true;
}
// 作用:封装一个计算机函数calc,用来进行简易计算
// 参数:a : number
// b : number
// f : string 符号
// 返回值: number
function calc(a,b,f){
switch(f){
case "+": return a*1 + b*1;
case "-": return a - b;
case "*": return a * b;
case "/": return a / b;
}
}
//封装一个isRun()函数
//作用:用来判断一个年份是不是闰年
//参数:year numbre 输入一个年份
//返回值:boolean
function isRun(year){
// 判断是否是闰年
if(year % 4 === 0 && year % 100 != 0 || year % 400 ===0){
return true;
}
return false;
}
//封装一个函数,
//作用:判断日期是否合法
//参数: y number 年份
// m number 月份
// d number 日期
//返回值:boolean
function isData(y,m,d){
var a ,b, c ;
// 判断年份是否输入正确为1000-2000之内
if(y >= 1000 && y <= 2000 && y % 1 ===0 ){
//判断月份1-12
if( m>=1 && m<=12 && m % 1 ===0){
// 日期的变化会随着月份改变 默认ed为31天
var ed = 31;
if(m === 4 || m === 6 || m === 9 || m === 10 ){
ed = 30;
}
// 判断二月份是否闰年
if(m === 2){
if(y % 4 === 0 && y % 100 != 0 || y % 400 ===0){
ed = 29;
}
else{
ed = 28;
}
}
// 判断日期是否正确
if(d >= 1 && d<=ed && d % 1 ===0 ){
return "t";
}
return "c"
}
return "b"
}
return "a" }