前言
语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。
1、字面量
var str = "welcome"; //字符串字面量
var array = [1, 2, 3, 4, 5]; //数组字面量
var fn = function () { //函数字面量
console.log("welcome");
};
2、箭头函数
let fun = function(params){}
//可以缩写成如下 箭头函数会改变this的指向
let fun= params =>{}
//当参数有两个及以上时,如下:
let fun= (params1,params2,,,)=>{}
3、数组解构
var arr = ['a', 'b', 'c'];
var [ a, b ] = arr
console.log(a) // a
// //数组解构也允许你跳过你不想用到的值,在对应地方留白即可,举例如下
let [a, , b] = [1, 2, 3];
console.log(a, b); //1 3
4、函数默认参数
function getResponse(a, b = 0) {
//常用于请求数据时,设置默认值
}
5、拓展运算符
let arr1=[1,2,3];
let arr2=[4,5,6];
let arr3=[...arr1,...arr2];
console.log(arr3);//[1, 2, 3, 4, 5, 6]
6、模板字符串
let a = '模板字符串'
let blog = `id是:${a}` // id是:模板字符串
console.log(blog);
//利用反引号实现多行字符串(虽然回车换行也是同一个字符串)
let poem = `A Pledge
By heaven,
I shall love you
To the end of time!
Till mountains crumble,
Streams run dry,
Thunder rumbles in winter,
Snow falls in summer,
And the earth mingles with the sky —
Not till then will I cease to love you!`
7、ES6中的类
class helloJs{
// 构造方法
constructor(options = {}, data = []) {
this.name = '奋斗中的编程菜鸟'
this.data = data
this.options = options
}
// 成员方法
getName() {
return this.name
}
}
8、模块化开发
let formatTime = date=>{
....
}
let endTime = date=>{
....
}
module.exports = {
formatTime,
endTime,
}
//可以用import {名称} from '模块'
//然后再同级目录创建一个js文件 引入 util.js
//import {endTime} from 'util'
//或者全部引入
//import util from 'util'