函数

函数:把可以实现一定功能的代码,封装成一个函数。
【声明函数】 函数声明了不代表调用,什么时候调用取决于您什么时候调用
1,字面量声明 (可以先使用后声明)
书写格式:关键字 标识符/(函数名) 小括号 {代码块}/{函数体}
function f70(自定义) () {代码块}
//创建函数
function f70(){
console.log(‘你’)
}
调用函数(执行函数体)
书写格式:函数名 小括
//调用函数
f70();

2.构造函数声明
书写格式:关键字 标识符/(函数名) 赋值符号 new function () ;
let f70(自定义) = new function () ;

3.函数表达式(匿名函数表达式)声明函数
书写格式:关键字 标识符 赋值符号 function() {函数体}
let f70(自定义) = function() {函数体}

函数三要素
【函数名】
【返回值】
注:函数100%有返回值,若写了则返回return后的内容,若没有写renturn则返回undefines,(renturn具备终止函数的功能),renturn只能返回一个值,想返回多个值可用引用数据类型(数组是引用数据类型可用)
【参数】
1,形参
形参的个数比实参多,多的形参为undefined。
实参的个数比形参多,多的实参数不会用。
在函数声明的时候。
2,实参(实际参数)
在调用函数的时候。
类数组 (实参比形参多)
函数名.arguments
arguments是函数的属性,返回所有实参内容,可以类似于数组的使用方式进行值的获取。(计算实参个数,通过arguments[下标]也可以访问到各实参)

不定参数…
接收多的实参,不定参数只能放在形参最后一个参数前(接收多余的实参以数组的方式)。
如果用了不定参数函数.length函数长度不计算不定参数
函数名.length 返回函数的形参个数。(注:1,不计算不定参数即…形参。2,只计算默认值之前的形参个数)
箭头函数 =>
let f70 =a=>console.log(a)

1,省略function关键字。
2,如果只有一个形参,可以省略小括号。
3,如果函数只有一条语句,可以省略大括号。
4.如果函数只有一条语句,并且需要返回这条语句的结果,则可以省略reture关键字。
5.不可以使用arguments
【在讲解DOM时,讲解什么是this】
6,不会把自己的this绑定到函数上。
原因:

【回调函数】
当一个函数作为一个参数,给另一个函数使用时,(当函数A,提供给函数B当参数,函数A就是回调函数)。

应用场景
1,排序
//数组的排序
// let f70 = [3, 5, 8, 9, 1];
// let arr = f70.sort((a, b) => a - b); //升序
// let arr = f70.sort((a, b) => b - a); //降序
// console.log(arr);

2,数组的方法every(每一个都要满足)只要有一个是假的就是false
//数组的方法every,判断数组中的每一个值是不是都符合要求 注:所以都满足返回true,只要有一个不满足返回fales
let f70 = [3, 5, 8, 9, 1];
let star=f70.every(a=>a%2==0);
console.log(star)//返回false

3,数组的方法some(只要有一个满足就返回true)
//只要其中有一个满足的就返回true
let f70 = [3, 5, 8, 9, 1];
star=f70.some(a=>a%2==0);
console.log(star);//返回true

filter过滤,返回满足条件的值
//输出满足条件的值
let f70 = [3, 5, 8, 9, 2];
star=f70.filter(a=>a%2==0);
console.log(star);//返回2,8
数组的方法map和forEach (注;都不能用break终止;会报错)
map的方法,遍历出数组中的每一个值,执行箭头函数的需求,把最终结果以新数组的方式返回。(注:不会改变原数组)
let f70 = [3, 5, 8, 9, 2];
// let star = f70.map(a => a % 2 == 0);
// console.log(star); //返回[ false, false, true, false, true ]
// let star = f70.map(a => a -1);
// console.log(star); //2,4,7,8,1
// console.log(f70); //3, 5, 8, 9, 2

forEach的方法,遍历出数组中的每一个值,执行箭头函数的需求,无返回值。(注:不会改变原数组)
let f70 = [3, 5, 8, 9, 2];
let star = f70.forEach(a => a -1);
f70.forEach(a=>{console.log(a-1);})
console.log(star);//返回 2,4,7,8,1 undefined
立即执行函数,创建即调用,调用即销毁,适用场景:关于一次性变量(时间)
立即执行函数
(function f70(){
console.log(f70);
}
)();

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值