迟来的ES6,且只说精髓

作者: github加星点进来 | 来源:发表于2016-08-05 10:42 被阅读583次
ES6_Image.png
不废话,程序员时间宝贵,精髓拿去不谢

说实话,ES6(ECMAScript2015)刚出现是有点抵触的。由于笔者对swift有了解,发现ES6 新特效和swift很像 。它包含了一些很棒的新特性,可以更加方便的实现很多复杂的操作,提高开发人员的效率。

当然你写ES6,由于浏览器的限制,需要使用babel 或其他的编译器转换成ES5

<br />

1.Default Parameters(默认参数) in ES6 (和swift 里面一样的)
var cat = function (age, color, type) {
  var age = age || 2;
  var color = color || 'red';
  var type = type || 'bosimao';
  console.log(age,color,type)
  //2 "red" "bosimao"
}

var _cat = function(age=2,color='_red',type='_bosimao'){
    console.log(age,color,type)
    //2 "_red" "_bosimao"
}
cat()
_cat()
2.Template Literals(模板对象) in ES6(swift 字符串插值)
//字符串插值 , 用于字符串相连

var a = '代表A';
var b = '代表B';

var _all = '我既' + a + '也' + b;
var all = `我既${a}也${b}`

console.log(_all,all)
//我既代表A也代表B 我既代表A也代表B
3.Destructuring Assignment (解构赋值)in ES6
let oA = {a: 1 , b:()=>{return 3},c : 12};

var { a , b } = oA
 //a 为1 , b为函数
4.箭头函数
//箭头函数,综合了插值和默认值

var aFn = (a,b=8)=>{
  return `function , arguments ${a},${b}`
}
5. Classes (类)in ES6

class 记住 类首字母大写的规范 个人很喜欢这个OOP编程风格

class Abc {
  constructor(language, length) {
    this.name = 'ABC';
    this.language = language
    this.length = length
  }

  getLanguage(){
    return `${this.language}`
  }
  nameString(){
    return 'abc'
  }
}

var ac = new Abc('english',26);

class DEF extends Abc {
  //对于父类需要初始值的,继续的子类直接不报错,是undefined , 这个在swift 会报错,很赞的功能
  //可以继承且重写 ,只不过swift 函数重写需要写 override 在函数前面
  getLanguage(){
    return 'DEF'
  }


}
var df = new DEF()
//english ABC
console.log( ac.getLanguage() , ac.name)
//DEF ABC undefined
console.log(df.getLanguage() , df.name,df.language)
6.Module 模块化 export,import 命令

//方式1.

export var name = 'name'

//方式2.

const  name = 'name'
export name

//方式3.

// people.js
let  name = (name) => {
  return `name is : ${name}`
}
const age = "27"
export {name,age}

使用的时候是
import {name, age} from './people.js'

整体输入,module指令

//people.js

export function getName(name) {
return `${name} alisa is liujunbin`
}
export function getAge(){
return '27';
} 

import * as p from './people.js'

p.getName('baron')

export default

不用关系模块输出了什么,通过 export default 指令就能加载到默认模块
不需要通过 花括号来指定输出的模块,一个模块只能使用 export default 一次

//people.js
 function getAge() {}
 export default getAge;

// 导入的时候不需要花括号

 import test from './people.js';

一条import 语句可以同时导入默认方法和其它变量.

import default, { other } from 'xxx.js';
7.Promise

详情移步至
简书地址 ES6 的 Promise实践
http://www.jianshu.com/p/c0b6381f6251

github 地址
https://github.com/976500133/Web-Library/blob/master/10.es6-promise%E4%BB%8B%E7%BB%8D.html

文章稿纸的地址详见github

https://github.com/976500133/Web-Library

其他的一些特性暂时不说了,使用的不多

相关文章

  • 迟来的ES6,且只说精髓

    不废话,程序员时间宝贵,精髓拿去不谢 说实话,ES6(ECMAScript2015)刚出现是有点抵触的。由于笔者对...

  • 关于说话艺术的体会

    “不说假话,真话少说”这是说话的精髓,你细细品味。 说假话,那是谎言、骗人,得不到信任;全说真话,那是实在,且在现...

  • 深度解析 ECMAScript 6

    ECMAScript 6 简称 “ES6”,ES6 包含了很多新的语言功能,且这些语言功能使得 JavaScrip...

  • 三顾茅庐-前端直通全栈A计划

    本茅草屋知识面涵盖、微信小程序、javascript精髓、vue/js/html/css/React/ES6面试题...

  • 觉山隐窑丨茶杯名字背后的黑历史

    一只好杯子就像一道可口的饭菜或者一首美妙的歌曲,其精髓必有着重之处,耐人品味颇久。以青花为例,有人说精髓在画上,无...

  • 迟来未到,且于山巅游走

    去年,前所未有,始料未及地过得十分煎熬。焦虑,痛苦,沮丧,在暗黑深处越挣扎越困惑,这样的日子何以用“难”字来囊括,...

  • 说且

    ​且字本读若狙,且的发音是其成为语义词之时的讹变。《说文》且:“薦也”。薦字读若荐,也有人把它当做荐字的繁体,其实...

  • 如果你再不来

    迟来的正义,没意义。 迟来的深情,比草贱。 如果你自此消失,我自此放弃。 曾经那些只属于我们的记忆。 我当做一个梦...

  • 一个人,一座城

    有时候,有的承诺始终经不起折腾,就像有的人,始终记不住,有的爱始终给不起。 有时候迟来的爱,迟来的对不起,到最后只...

  • 且(只;但)

    只: 宋 无名氏 《张协状元》戏文第五出:“孩儿去则犹閒,且是无人照管我门户。”《京本通俗小说·西山一窟鬼》:“果...

网友评论

    本文标题:迟来的ES6,且只说精髓

    本文链接:https://www.haomeiwen.com/subject/rushsttx.html