- 博客(10)
- 资源 (2)
- 收藏
- 关注
原创 SE6新特性之集合Set、Map、WeakSet和WeakMap详解
SE5的时候我们经常用数组或者类数组对象来操作数据,而对于一些使用惯了java之类语言的集合的开发人员来说,总有少了点什么的感觉,SE6提供Set和Map这两个集合。不仅从根本上为一些问题提供了解决方案(如数据不重复),还大大提升了性能。要想理解Set和Map,就要从它的根本问题说起,在进行详细的API概览之前,我觉得有必要先说明两点:遍历Set和Map的顺序就是元素插入的顺序。这
2017-04-30 23:27:04 7429
原创 ES6新特新之箭头函数使用细节
是什么呢?今天我们就来探究一下ES6的新特新-----胖箭头函数其他语言的函数定义都是很简洁的,但是为什么javaScript的就那么复杂呢?还必须带function关键字,这是一直令我很困惑的一个问题,还好ES6为我们解了这个问题,它定义的箭头函数不仅省略了function和return,甚至连一些小括号,大括号和分号都省略了,这种极简主义风格简直美不可言。// ES5array.fi
2017-04-30 21:13:21 443
原创 ES6新特性之Symbol使用细节
在迭代器章节的时候出现过[Symbol.iterator ]的属性,那么到底Symbo到底是什么?答:Symbol是ES6新定义的一种值,它既不是字符串,也不是对象,而是为javaScript增加的第七种基本类型,可以作为一个属性,多用来修复与旧代码命名冲突的问题。typeof Symbol()//"symbol"创建一个Symbol有三种方法:调用Symbol(),这种
2017-04-30 19:28:40 1750 2
原创 ES6新特性之解构使用细节
ES6的解构说白了就是能够让我们一次性取到多个值,大致可分为一下几个方面1、数组解构普通的一维数组解构,如下one = array[0],two=array[1],three=array[2]var [one, tow, three] = array;嵌套数组解构var [one,[[two],three]] = [1,[[2],3]];// one=1;two=2;thre
2017-04-28 19:28:06 390
原创 ES6 class的继承使用细节
ES6 class的继承与java的继承大同小异,如果学过java的话应该很容易理解,都是通过extends关键字继承。class Animal{ constructor(color){ this.color = color; };}class Bear extends Animal{ constructor(){ super(); }}其余的就不多说了,这里着重讲一
2017-04-28 17:43:00 8823
原创 ES6新特性 Class的实现
ES5之前类的继承是靠原型实现的,而这一过程的实现又涉及到一大堆的原型定义,特别是ES5推出了Object.definePorperty()方法后,代码更加晦涩。但是这种方式正是javascript这种弱类型语言的灵活性所在,而SE6为了使得javascript的类继承像java之类的语言一样更加简单纯粹,也推出了class这个定义类的关键字,虽然失去了一点灵活性,但是代码变得更加简单了。像其
2017-04-28 15:36:42 606
原创 ES6 for-of循环和迭代器使用细节
SE5之前我们可以用for循环来遍历数组,SE5为数组引进了新的方法forEach(),方便了很多,但是该方法不能够通过break或者return返回外层函数。arr.forEach(function(value){ console.log(value);}) ES6定义了一个更好的遍历数组的方法for-of循环,该方法的强大在于可以遍历任何具有迭代器的对象,例如数组、NodeLi
2017-04-28 13:55:15 541
原创 SE6 不定参数和默认参数详解和使用细节
在SE5以前我们通常通过arguments类数组对象来引用不定形参,SE6则使用了一种叫做不定参数的写法,比起隐式的arguments要直观的多。不定参数使用...参数名来指定一个不定参数,参数名指向一个数组,传进来的参数除开指定的形参外,其他的都存在这个数组中。如果调用famlies("Jhon","sily","mery");则others=["sily","mery"]。fu
2017-04-27 23:17:18 695
原创 SE6 模板字符串详解
SE6引入了模板字符串这样一个概念,让我们从无止尽的+连接字符串中解脱了出来,SE5中也可以在字符串末尾添加\实现,不过模板字符串更加好用和强大。SE6模板字符串是用反撇号(`,即键盘上和~键同一个键)括起来的字符串。支持字符串插值${express}$("#btn").html(` javaScript 6 2015年由${name}引入 `);使用说明:占
2017-04-27 17:35:10 1160
原创 ES6 let和const详解及使用细节
ES6之前javascript只有全局作用域和函数作用域,所以经常会遇到变量提升了或者使用闭包的时候出错的问题。所有a[i]都会输出10;var arr=[];for (var i=0;i<10;i++){ arr[i]=function(){ console.log(i); };} 变量提升,输出undefined。function
2017-04-27 16:14:00 1192
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人