放一张毫无意义的图。
前言
在github上有很多框架都是用的ES5,对于接触ES5比较多的人,如果想写ES6语法还是要有个参考, 这里用ES5/ES6实现了两段功能完全相同的代码,但是不保证可以正常运行,主要是把区别表现出来。
ES5
```js
// ES 5
var React = require("react-native");
var {
Image,
Text,
} = React;
var MyComponent = React.createClasj ss({
getDefaultProps: function() {
return {
prop1: value1,
继续阅读 »
content
{:toc}
Babel 用于将 ES6 的代码转化为 ES5,使得 ES6 可以在目前的浏览器环境下使用。学习使用 babel 是为了使用 ES2015 做准备。本文将介绍如何使用 babel,以及一些相关的配置。
继续阅读 »
创建类
1.工厂模式:解决了创建多个相似对象的问题,但却没有解决对象识别的问题(即怎样知道一个对象的类型)
```
funtion createPerson(name, age, job) {
var o = new Object();
o.name = name;
o.age = age;
o.job = job;
o.sayName = function () {
alert(this.name);
};
return o;
}
var person1 = createPerson("Nicholas", 29, "SE");
```
2.构造函数模式:缺点是每个方法都要在每个实例上
继续阅读 »
ES6 才刚被标准化,人们就在开始谈论 ES7 将提供哪些闪亮的新特性了。作为 Web 开发人员,我们更想知道如何使用这些新特性。在之前的文章中,作者鼓励我们在一些工具的帮助下开始使用 ES6:
如果你想使用这些新语法,你可以使用 Babel 或 Google 的 Traceur 将 ES6 代码转换为友好的 ES5 代码。
本文的主题就是这些工具的使用,上面这些工具被统称为 transpiler,transpiler 也被称为源码到源码的编译器,用于在抽象级别进行编程语言之间的相互转换。使用 transpiler 可以让我们用 ES6 语法来编写代码,同时保证这些代码能在所有浏览器上运行。
more
Transpiler
继续阅读 »
本文翻译自macr.ae
Babel是一个JavaScript转换编译器,它可以将ES6(下一代JavaScript规范,添加了一些新的特性和语法)转换成ES5(可以在浏览器中运行的代码)。这就意味你可以在一些暂时还不支持某些ES6特性的浏览器引擎中,使用ES6的这些特性 - 比如说,class和箭头方法。本文,我将围绕gulp和babel,介绍如何使用它们。
"使用基于Babel的gulp"其实可以有两种理解:一是使用Babel编写ES6语法的gulpfile;二是使用gulp来运行babel,让ES6编写的JavaScript代码转化成浏览器可以理解的JavaScript代码。这两种情况接下来我将一一介绍。
继续阅读 »
Airbnb 的 ES5 规范写的非常好,现在添加了 ES6 的部分。
另外阮一峰老师的 ECMAScript 6 入门值得参考。
more
类型
原始类型:值传递
string
number
boolean
null
undefined
```js
const foo = 1;
let bar = foo;
bar = 9;
console.log(foo, bar); // => 1, 9
```
复杂类型:引用传递
object
array
function
```js
const foo = [1, 2];
const bar = foo;
bar[0] = 9;
console.log
继续阅读 »
如何遍历一个数组的元素?在 20 年前,当 JavaScript 出现时,你也许会这样做:
javascript
for (var index = 0; index < myArray.length; index++) {
console.log(myArray[index]);
}
自从 ES5 开始,你可以使用内置的 forEach 方法:
javascript
myArray.forEach(function (value) {
console.log(value);
});
代码更为精简,但有一个小缺点:不能使用 break 语句来跳出循环,也不能使用 return 语句来从闭包函数中返回。
如果有 for
继续阅读 »