es6学习第一课

本文详细介绍了ES6中新增的数据类型Symbol及其特点,探讨了generator函数在解决异步和深度迭代问题上的应用,并深入讲解了数组的各种循环方法,如forEach、map、filter、some、every和reduce等,展示了它们在数据处理中的强大功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、Es6新增的数据类型:

  原有的有string、number、boolean、null、undefined,一种复杂的object(array/function)   5+3
  新增的
  Symbol    定义  let syml = Symbol('abc')
  注意:a\不能new   b\返回是一个唯一值   c\是一个单独的数据类型,就为symbol
  ![代码测试结果](https://img-blog.csdnimg.cn/20190228121038226.?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FpYW5naHVhZmVpZmVpZmVp,size_16,color_FFFFFF,t_70)

2、generator函数

  解决异步,深度潜逃的问题
<script type="text/javascript">
    function * tes(){
    	yield 'wellcome'
    	yield 'hello'
    }
    console.log(...tes());//wellcome hello
    console.log(tes().next().value);//wellcome
    console.log(tes().next())//{value: "wellcome", done: false}
    //https://api.github.com/users/itstrive
    //结合promise 异步调用
    function* ax(){
    	let val = yield "aaa"
    	yield axios.get(`https://api.github.com/users/${val}`)
    }
    let g1 = ax();
    let username = g1.next().value;
    console.log(username)
    g1.next(username).value.then(
    	res=>{
    		console.log(res.data);
    	}
    )
</script>
**

3、数组的循环

**
forEach、map((val,index,arr)=>{

})
map有返回值
arr.filter() 过滤一些不合格的元素
arr.some() 类似查找,数组里面有一个元素符合条件就返回true
arr.every() 每一项都满足返回true

(prev上一个的返回值,cur当前值)
arr.reduce((prev,cur,index,arr)=>{

})

let arr=[1,2,3,4,5,6,7,8,9];
let all = arr.reduce((prev,valu,index,arr)=>{
return prev+valu;
})
console.log(all) //45

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值