ES6数组的高阶方法,箭头函数,对象[通俗易懂]

ES6数组的高阶方法,箭头函数,对象[通俗易懂]一.数组的高阶方法forEach(遍历)vararr=[‘我’,’和’,’我的’,’祖国’];arr.forEach(function(item,index,self){ console.log(item,index,self);})map(映射)vararr=[12,34,56];vararr2=arr.map(function(item,index,self){ console.log(item,index,self); returnitem*2;})

大家好,又见面了,我是你们的朋友全栈君。

一.数组的高阶方法

forEach(遍历)

 var arr = ['我','和','我的','祖国'];
 arr.forEach(function(item,index,self){ 
   
 	console.log(item,index,self);
 })

map(映射)

var arr = [12,34,56];
var arr2 = arr.map(function(item,index,self){ 
   
	console.log(item,index,self);
	return item*2;
})
console.log(arr2)

filter(过滤)

var arr1 = [12,45,32,75,49,61];
var arr2 = arr1.filter(function(item){ 
   
	return item>20;
})
console.log(arr2)

reduce(累加)

var arr = [13,32,67,98,11,23,65,1,2,3,9];
var ret = arr.reduce(function(a,b){ 
   
	return a+b;   累加
})
console.log(ret)

every(每一个)

var arr = [13,32,67,98,11,23,65,1,2,3,9];
var ret = arr.every(function(item){ 
   
	return item>12;
})
console.log(ret)

some(有一个)

var arr = [13,32,67,98,11,23,65,1,2,3,9];
var ret = arr.some(function(item){ 
   
	return item > 12;
})
console.log(ret)

二.数组新增方法

fill()填充

填充 fill(“填充内容”,start,end)。

copywithin()拷贝

从数组拷贝替换元素copywithin(替换开始位置,拷贝开始位置,拷贝结束位)

find()与findIndex()查找

按 条件查找 find 查找元素 findIndex查找下标

sort()排序

var arr = [1,5,11,27,4568];
arr.sort(function(a,b){ 
   return a-b});
console.log(arr);
			
var arr1 = [{ 
   age:10},{ 
   age:7},{ 
   age:14}];
arr1.sort(function(a,b){ 
   return a.age>b.age});
console.log(arr1);

三.箭头函数

箭头函数就是函数简写方式

  1. 组成: 参数 => 语句,
  2. 参数不是1个: (参数,参数2)=>语句
  3. 语句不止一条: 参数 =>{语句1;语句2;return 返回值}
  4. 返回的对象格式: 参数=>({对象})
普通函数
 var arr = ['我','和','我的','祖国'];
 arr.forEach(function(item,index,self){ 
   
 	console.log(item,index,self);
 })

转换为箭头函数
var arr = ['我','和','我的','祖国'];
arr.forEach(item => console.log(item))

四.函数的三种参数

1.函数的默认参数

function add(a,b=10){ 
   
	alert(a+b);
}
add(3,5);
add(3)

2.函数的不定参数

function add(...args){ 
   
	var ret  = args.reduce((a,b)=>a+b)
	alert(ret)
}
add(1,2,3,4,5);

3.函数的扩展实参

function metting(a,b,c){ 
   
	console.log('今天开会的有:',a,b,c);
}
var arr = ['天线宝宝','海绵宝宝','花园宝宝'];
metting(...arr);

五.对象

对象的简写

var name = '毛毛';
var age = 18;
var user = { 
   
	name,
	age,
	say(){ 
   
		alert(`大家好,我的名字是${ 
     this.name},今年${ 
     this.age}`)
	}
};
console.log(user)

对象的继承

__proto__对象的继承

var man={ 
   
	leg:2,
	walk(){ 
   console.log(`我用我的两条腿步行`)}
}	 
var student = { 
   
	name:"毛毛",
	age:18,
	__proto__:man
}		 
var key = window.prompt("请输入对象名称","like");
var value = window.prompt("请输入对象值","好好学习");
var obj = { 
   [key+"web"]:value};
console.log(obj);
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/131260.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 小议存储过程的优点

    小议存储过程的优点

    2021年11月24日
    53
  • 史上最全阿里 Java 面试题总结及答案

    史上最全阿里 Java 面试题总结及答案史上最全阿里Java面试题总结–答案一、Java基础\color{blue}{一、Java基础}一、Java基础1.JAVA中的几种基本数据类型是什么,各自占用多少字节。答案:java分为两种数据类型:1.基本数据类型2.引用数据类型:如,类,接口,数组基本数据类型:8种1.byte1个字节,-128~1272.short2个字节,-32768~327673….

    2022年7月18日
    17
  • 红外传感器型号和参数_红外传感器参数

    红外传感器型号和参数_红外传感器参数1、组成:红外线传感器包括光学系统、检测元件和转换电路。2、分类:光学系统按结构不同可分为透射式和反射式两类。检测元件按工作原理可分为热敏检测元件和光电检测元件。热敏元件应用最多的是热敏电阻。热敏电阻受到红外线辐射时温度升高,电阻发生变化,通过转换电路变成电信号输出。光电检测元件常用的是光敏元件,通常由硫化铅、硒化铅、砷化铟、砷化锑、碲镉汞三元合金、锗及硅掺杂等材料制成。(1)红外线传感器依动作可…

    2022年5月25日
    52
  • minicom指令_minicom 串口通信设置

    minicom指令_minicom 串口通信设置L文件捕获开关。打开时,所有到屏幕的输出也将被捕获到文件中。M发送modem初始化串。若你online,且DCD线设为on,则modem被初始化前将要求你进行确认。O配置minicom。转到配置菜单。P通信参数。允许你改变bps速率,奇偶校验和位数。Q不复位modem就退出minicom。如果改变了macros,而且未存盘,会提供你一个save的机会。R接收文件。从各种协议(外部)中进行选择。若f…

    2022年4月29日
    257
  • python fileinput_Python中fileinput模块

    python fileinput_Python中fileinput模块fileinput模块可以对一个或多个文件中的内容进行迭代、遍历等操作。该模块的input()函数有点类似文件readlines()方法,区别在于:前者是一个迭代对象,即每次只生成一行,需要用for循环迭代。后者是一次性读取所有行。在碰到大文件的读取时,前者无疑效率更高效。用fileinput对文件进行循环遍历,格式化输出,查找、替换等操作,非常方便。【典型用法】importfileinputf…

    2022年6月6日
    29
  • Eclipse中SVN插件的基本使用「建议收藏」

    Eclipse中SVN插件的基本使用「建议收藏」首先在提交代码的时候,会看到有的文件前会有雪花标志,代表该文件被修改过。提交代码的时候,点击整个项目,右键—team—与资源库同步,这个目的是检查本地的代码和服务器上的代码有没有冲突,如果有冲突的话,应该像将冲突解决,否则提交代码会出错,解决冲突看我的另一篇博客。点击与资源库同步按钮之后,会跳转到TeamSynchronizing界面,这个时候eclipse会自动检测本…

    2022年9月26日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号