ES6新增,常用的方法
一.ES6的新增
- 新增了canvas 绘画视图
- 新增了定义class的语法糖
- 函数的新增了箭头函数、函数参数的默认值
- 数组实例新增了 keys(),values(),entries()
- 新增了基本数据类型(symbol)
- 变量的解构赋值
- 新增了Map数据结构 和 Set数据结构
- 新增了模块化(import/export)
- 数组和对象新增了扩展运算符
- 数组新增了一些API接口 例如 api/app
- 新增了generator(生产器) 和 iterator(遍历器)
- 块级作用域(let,const)
- Object.assign()
- 新增了模板字符串
二.常用的es6方法
1. 箭头函数,函数参数的默认值
let arr=[1,2,3,4,5,6,7,8,9,10]arr.forEach((i,k)=>{console.log('箭头函数')})function log(x,y=10)=>{ //默认值 没有传递参数的时候使用默认值 如果传递参数就使用传递的参数console.log(x,y)}log(5)
2.解构赋值
- 数组方式
let [a,b,c] = [1,2,3] //a=1,b=2,c=3let [a,b,c] = [1,2] //a=1,b=2,c=undefinedlet [a,b,c] = [1,2,3,4,5,6,7] // a=1,b=2,c=3let [a,b,[c]] = [1,2,3,4,5,6,7] // a=1,b=2,c=3let [a,b,[...c]] = [1,2,3,4,5,6,7] // a=1,b=2,c=[3,4,5,6,7]let [a,b,c=7] = [1,2] // a=1,b=2,c=7 没有赋值就使用默认值
- 对象方式
let {a:a,b:b} = {a:10,b:30} // a=10,b=30let {a:a,b:b} = {b:10,a:30} // a=30,b=10let {a,b} = {a:10,b:30} // a=10,b=30let {a:c,b:d} = {a:10,b:30} // a=10,b=30let {c,d} = {a:10,b:30} //c=undefined,d=undefined
- 对象的嵌套使用
let obj={p:['hello',{x:'world'}]}let {p:[a,{x:b}]} = objlet {p:[a,{x}]} = objconsole.log(a,b) //a=hello b=worldconsole.log(x) //x=worldlet obj={p:['hello',{x:'world'}]}let {p:[a,{b}]} = objconsole.log(b) //undefined
- 默认值
let {a:y=20} ={b:10}console.log(y) //20let {a:y=20} ={b:10,a:11}console.log(y) //11var {foo: {bar}} = {baz: 'baz'};foo //报错
- 字符串方式
let [a,b,c,d,e] = 'hello'console.log(a,b,c) // h e llet [a,b,[...c]] = 'hello'console.log(a,b,c) // h e [llo]
3.块级作用域(let,const)
什么是let呢?
let和var差不多,都是用来声明变量的。区别就在于:
1、 let声明的变量只在所处于的块级有效;
2、 let没有‘变量提升’的特性,而是‘暂时性死区(temporal dead zone)特性。let声明的变量只在所处于的块级有效;
'use strict';function func(args){if(true){//let声明ilet i = 6;//在if内打印i值console.log('inside: ' + i);}//在if外,再次打印i值console.log('outside: ' + i);};func();
- let没有‘变量提升’的特性,而是‘暂时性死区(temporal dead zone)特性。
'use strict';function func(){//在let声明前,打印iconsole.log(i);let i;};func();
const命令:
- const命令与let命令一样,声明的变量,其作用域都是块级。
所以const遵循的规则与let相差无二,只是,const是用来声明恒定变量的。
且,用const声明恒定变量,声明的同时就必须赋值,否则会报错。
'use strict';function func(){const PI;PI = 3.14;console.log(PI);};func();
ES6新增,常用的方法相关推荐
- ES6新增的数组方法
本文整理ES6"新增"的 map方法.filter方法.some方法.every方法.reduce方法 一.map()方法 给数组的每个元素做特殊的处理 返回一个新的数组 例1 给 ...
- js中ES6新增的数组方法reduce(),和数组去重,降维。
js中ES6新增的数组方法reduce() js数组reduce()详解 基本概念: reduce()方法接收一个函数作为累加器,数组中的每一值(从左到右)开始缩减,最后成为一个值 reduce()为 ...
- js进阶高级与ES6,常用函数方法
ES6与高级 2021.9.11 class类的使用 类的本质就是function函数 在ES6中声明类用class关键字 ES6中类没有变量提升,所以必须先定义类,才能实例化对象 类里面的共有属性和 ...
- es6 新增 常用 语法 知识点 汇总
## let关键字 定义一个变量 特征: 1.不能重复声明 2.块级作用域 3.不存在变量提升 4.暂存死区 ## const关键字 定义一个常量 特征: 1.const关键字定义的值不能修改 2.不 ...
- ES6 新增数组的方法使用介绍
ES5中新增了写数组方法,如下: forEach (js v1.6) map (js v1.6) filter (js v1.6) some (js v1.6) every (js v1.6) ind ...
- 总结: 数组常用的方法
在实际开发当中, 数组和对象使用到最多的; 数组和对象有很多的方法, 这里主要探讨一下: 数组的增删改查 数组的排序方式 数组转换成其他数据类型的方式 ES6数组新增常用的迭代方式 为什么需要数组? ...
- es6新增数组、数组去重、es6新特性
ES6新增的数组方法 1.forEach forEach()会遍历数组, 循环体内没有返回值,forEach()循环不会改变原来数组的内容, forEach()有三个参数, 第一个参数是当前元素, 第 ...
- ES6新增数据类型符号(1):普通符号
在编程时,我们会遇到某些属性,我们不需要或者不想要别人访问它,即需要设置私有属性,如下例,我们不需要在外部获取getRandom这一属性 const game = {attack: 30, //攻击力 ...
- js中数组常用的方法总结,包括ES6
原文地址:js中数组常用的方法总结,包括ES6 1.push() 后增 push()方法可以向数组后添加一个新的元素,并返回新数组的长度. 末尾添加,返回长度,改变原数组 var a = [1,2,3 ...
最新文章
- Java最全文件操作实例汇总
- html设置页面大小_如何将Word文档页面大小设置为16开?
- Ubuntu 16.04设置Redis为开机自动启动服务
- 【Android 进程保活】提升进程优先级 ( 1 像素 Activity 提高进程优先级 | taskAffinity 亲和性说明 | 运行效果 | 源码资源 )
- webgl内置函数--通用函数
- Java的HTTP服务端响应式编程
- 目标检测算法图解:一文看懂RCNN系列算法
- 对我有利就契约,不利就废纸
- qt结合arcgis进行开发
- 通信原理笔记(樊昌信第七版)
- 如何利用家谱制作软件快速修谱录入
- 向flume发送消息出现Client sent event exceeding the maximum length
- iLife '09测评
- python股票技术指标计算,python股票量化交易(3)---趋势类指标MACD
- 华为OD机试 - 最短耗时(C++) | 附带编码思路 【2023】
- 腾讯云Web应用防火墙有什么用?Web应用防火墙是防御原理介绍
- OneDrive说明与OneNote的同步操作
- 用 JavaScript 实现手势库 - 实现监听逻辑【前端组件化】
- 微信小程序图片前端压缩(canvas)
- JavaWEB快速入门之验证码及课堂项目【04】