js,新增ES6 语法

一,生名变量
1.let
可以更加规范的编写代码
具有全局性

			let a = 100
			let b = 200
			function fun(){
				console.log(a + b) // 300
			}
			fun()

2.const
定义后的变量,将会无法更改

			const a = 100
			console.log(a) //100
			a = 200
			console.log(a) // 跑错

二,赋值
1,传统赋值

			var a = 10
			let b = 20
			const c = 30

2,数组解构赋值

			let [a,b,c] = [10,20,30]
			console.log(a) // 10
			console.log(b) // 20
			console.log(c) // 30

还可以这样写

			let [a,[b],c] = [10,[20],30]
			console.log(a) // 10
			console.log(b) // 20
			console.log(c) // 30

总之,将括号,能够对应上就可以了
1)默认项
如果没有赋值变量,那么这个变量,将会等于默认项

			let [a='true'] = []
			console.log(a) // true

2)undefined事件
如果赋给变量的值是undefined的话,那就是未定义,将变量就会有一个默认值,这个默认值,不是一定要有的,这里是为了演示,我用了默认项

			let [a='true'] = [undefined]
			console.log(a) // true

3,对象解构赋值

			let {a,b,c,d} = {a:10, b:20, c:30}
			console.log(a) // 10
			console.log(b) // 20
			console.log(c) // 30
			console.log(d) //undefined

1)别名
再给变量赋值给一个新的名字,调用的时候要用赋值后的新名字

			let {a:as,b:bs,c:cs} = {a:10, b:20, c:30}
			console.log(as) // 10
			console.log(bs) // 20
			console.log(cs) // 30

2)标量和属性值不一样的情况
将变量和赋值,分开写

			let obj = {a:10, b:20, c:30}
			let {a,b,c} = obj
			console.log(a) // 10
			console.log(b) // 20
			console.log(c) // 30

三,箭头函数
箭头函数和函数差不多,但是性能要比函数,要好得多,

			let Person = {
				'name':'小明',
				'age':18,
				'sayHolle':function(){
					setInterval( () => {
						// 这里的this指的是这个对象
						console.log(this.name)
						console.log(this.age)
					},1000)
				}
			}
			Person.sayHolle()

四,map数据结构

			let map = new Map([
				['name','张三'],
				['title','作者']
			])

1)调用方法

			let map = new Map([
				['name','张三'],
				['title','作者']
			])
			// get方法调用方式
			console.log(map.get('name')) // 张三
			console.log(map.get('title')) // 作者
			console.log(map.get('age')) // undefined

2)set方法更改

			let map = new Map([
				['name','张三'],
				['title','作者']
			])
			// set方法更改
			map.set('name','李四')
			console.log(map.get('name')) // 李四
			map.set('title','作者的')
			console.log(map.get('title')) // 作者的

3)delete方法删除数据

			let map = new Map([
				['name','张三'],
				['title','作者']
			])
			// set方法更改
			map.delete('name')
			console.log(map)

输出的结果
在这里插入图片描述
2,map遍历数组
1)keys方法
循环属性

			let map = new Map([
				['name','张三'],
				['title','作者']
			])
			for (let key of map.keys()){
				console.log(key)      //   name       title
			}

2)valus方法
循环值

			let map = new Map([
				['name','张三'],
				['title','作者']
			])
			for (let value of map.values()){
				console.log(value)       //   张三        作者
			}

3)entries方法
循环的是属性和值

			let map = new Map([
				['name','张三'],
				['title','作者']
			])
			for(let[key,value] of map.entries()){
				console.log(key + ':' + value)
			}

在这里插入图片描述
4)forEach方法
循环属性和值

			let map = new Map([
				['name','张三'],
				['title','作者']
			])
			map.forEach(function(value,index){
				console.log(index +':'+ value)
			})

输出结果
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值