es6冲刺01
1、let/const
1)作用域:es5中有全局作用域、函数作用域。es6中新增了块级作用域
2)let定义的变量在所在块级作用域外失效,严格模式下失效后直接报错,
且不允许重复声明同名变量
3)const用于声明常量,声明时必须赋值,也是在块级作用域下有效
2、解构赋值
1) 数组解构赋值
包含默认值的写法
2)对象解构赋值
包含默认值的写法
{let a,b=6
{a,b}={a:1,b:2 }
}
3)使用场景
变量交换
函数以数组、对象为返回值
选择性接收数据
下图输出1 4

取返回数组首项

a=1 b=[3,4,5]
只要两边能匹配,都能解构赋值
3、字符串扩展
1)unicode编码
0XFFFF是unicode单字符编码的最大范围
若想输出编码值大于0xffff的
用大括号包裹即可;

2)unicode编码处理新方法
3)字符串新方法
判断某字符串中是否包含某字符,返回布尔值:
.includes(''char")
判断某字符串是否已某字符或字符串开头(结尾)
.startsWith()
.endsWith()
重复n次字符串
.repeat(n)
不足自动在首尾补齐
.padStrat(length,'char')
.padEnd(length,'char')
4)模板字符串
用反引号包裹,让我们更优雅地拼接变量和字符串
变量用${}进行包裹
5)标签模板
4、数值扩展
1)
Number添加了许多静态方法
isFinite() 判断是否有尽
isNaN() 判断是否不是数字
isIntegeger()判断是否整数
2)
取整
Math.truc(num)
判断正负,返回+/-1 0 NaN
Math.sign(num)
5、数组扩展
1)Array
不管元素的类型,返回由参数组成的数组实例
Array.of(arg1,arg2,...)
把伪数组和集合转换成真正的数组
Array.from(fakeArr)
返回一个新数组,其元素经过callback处理
Array.from(arr,callback)
2)
填充数组,把数组内元素全部换为char
arr.fill(subchar)
指定替换范围的索引
arr.fill(subchar,start,end)
3)keys/values/entries
arr.keys()
返回arr下标(索引)的集合
arr.values()
返回元素值集合
arr.entries()
返回索引及元素
arr.find/findIndex(function)
前一个返回符合条件的第一个数组元素
或者返回第一个符合条件的索引
arr.inclues(char)
数组中是否包含某值,完全相等,返回布尔类型
6、函数扩展
1)默认值
function test(x,y='hello'){...}
test('you')
默认值后面不可以有没有默认值的变量
2)作用域

输出kill kill
注意作用域,在函数定义内部先找
3)rest

...arg
类似arguements,将未知的实参合为一个数组
4)扩展运算符
rest的逆运用
...arr
将数组按元素拆成离散的值
5)箭头函数
匿名函数的新定义方式
(参数1,参数2,...)=>{函数体}
简写,只有一个参数时,只有一句返回值的语句
参数=>返回值语句
无参
()=>返回值语句
6)伪调用
某个函数返回另一个函数的调用
7、对象扩展
1)键的省略

2)属性表达式
在es5中我们的属性名总是一个固定的值,在es6中,我们
可以使用表达式来作属性名了,用中括号包裹即可
var obj={
['a'+'b']:5
}
3)新增api
Object.is(obj1,obj2)
判断两个对象是否相等,是严格相等
Object.assign(obj1,obj2)
拷贝属性,浅拷贝。继承属性及不可枚举的属性不可拷贝
es6冲刺01的更多相关文章
- es6冲刺02
1.Symbol es6新增的数据类型 1)概念 提供一个独一无二的值 let a=Symbol() let b=Symbol() 或 let c=Symbol.for('c') let d=Symb ...
- ES6笔记01
一.ECMAScript 6 ECMAScript 6.0,简称ES6,第一个版本是在2015年6月进行发布,所以也称之为<ECMAScript 2015 标准>(简称 ES2015). ...
- [ES6系列-01]Class:面向对象的“新仇旧恨”
[原创]CoderPower 大家好,这里是码路工人有力量,我是码路工人,你们是力量. 这是公众号(码路工人有力量)开通后的第二篇,写得还是有待改进吧.这次准备写一个关于ES6基础的短文系列,努力尽快 ...
- ajax项目冲刺01
1.模板引擎 1)模板+数据=>静态页面片段 2)art-template性能较好 分支语法: {{if value}} ... {{/if}} {{if v1}} ... {{else if ...
- 在AngularJS中使用ES6
本篇记录一些AngularJS结合使用ES6的各种写法. ES6中module的导出导入 class MainController { constructor(searchService){ this ...
- 01 | let 和 const语法 | es6
01 | let 和 const语法 ES6新增了let命令,用来声明变量.它的用法类似于var,但也有区别 let 和 var 1.作用范围不同 var声明的变量在全局范围内都有效,所以全局只有一个 ...
- 01快速入门-04-Map、Set和iterable(ES6)
1.Map 我们知道,在JS中其实对象的方式就跟Java中的Map极为相似,即键值对的方式.JS中,key必须是字符串,实际上Number等值作为key也是合理的,所以为了解决这个问题,在最新的ES6 ...
- 01 node.js,npm,es6入门
Node.js安装 1.下载对应你系统的Node.js版本: https://nodejs.org/en/download/ 命令提示符下输入命令 node -v 会显示当前node的版本 快速入门 ...
- [ES6] 01. Intro to ES6 and traceur compiler
---恢复内容开始--- ES6 is ECMAScript version 6, which JavaScript is based on. The next version of JavaScri ...
随机推荐
- [转]PO BO VO DTO POJO DAO概念及其作用(附转换图)
来源:http://www.blogjava.net/vip01/archive/2013/05/25/92430.html J2EE开发中大量的专业缩略语很是让人迷惑,尤其是跟一些高手讨论问题的时候 ...
- .net core 使用NPOI填充Word模板导出Word
最近工作用到在Word模板插入数据库数据,导出一个带数据的Word文件,想起来之前操作Word都是用微软提供的Microsoft.Office.Interop.Word,而在最新的..NET CORE ...
- ftp弱密码案例
- 020000——00001_使用 PyCharm
1.快速上手的中文视频 简单介绍了如何安装.如何创建文件.如何设置皮肤. http://v.youku.com/v_show/id_XODMyMzM1NzQ4.html 2.Pychram 官方的快速 ...
- 043 关于 loadrunner 返回 http 500 错误解决思路
这个支持项目中,总是出现500的问题,后来发现是redis总是崩掉. 后来,在压力测试,500的问题,又开始不断出现,虽然不是我自己处理的,但是没少吃苦头. 看了这篇文章,感觉说的还是很有道理,如何来 ...
- 20165235 祁瑛 2018-4 《Java程序设计》第九周学习总结
20165235 祁瑛 2018-4 <Java程序设计>第九周学习总结 教材学习内容总结 URL类 UR类是java.net包中的一个重要类,使用URL创建的对象的应用程序称作称作客户端 ...
- mniui里面没有只显示年的控件,monthpicker显示年月,datepicker显示具体到天的日期
spinner无法出现下拉框,只能一下下的点击. combobox可以出现下拉框,但是一般情况是从url后台取值. 现在可以自己在js里定义需要的值. <td><input id=& ...
- 【python】廖雪峰python教程学习--基础
No1: 目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的 No2: 用r''表示''内部的字符串默认不转义 No3: 以'''开头,敲回车可以换行 No4: 布尔 ...
- 从零搭建 ES 搜索服务(五)搜索结果高亮
一.前言 在实际使用中搜索结果中的关键词前端通常会以特殊形式展示,比如标记为红色使人一目了然.我们可以通过 ES 提供的高亮功能实现此效果. 二.代码实现 前文查询是通过一个继承 Elasticsea ...
- 001.NoSQL及MongoDB简介
一 NoSQL简介 二 分布式系统 三 CAP及BASE定律 以上均可参考: http://www.runoob.com/mongodb/nosql.html 四 MongoDB简介 参考:http: ...