js 常见简写语法

2019-02-26  本文已影响0人  codeflame

1.拓展运算符 ...variable
数组拓展:

let a = [1,2,3];
let b = [4,5,...a];//b=[4,5,1,2,3]


也可拓展对象:

let a = {x:3, y:4};
let b = {xx:1, yy:2, ...a};//b={xx:1, yy:2, x:3, y:4}

这里小数点是三个,跟剩余参数function f(arg1, ...rest) {}的小数点个数相同

2.模板字符串 ${variable}

var s='sss';
var ss=`1${s}1`;//ss='1sss1'

这里的引号是反单引号。单引号、双引号不支持该语法

3.定义对象时,属性与值的简写

var a=1;
var b={ a };//等价于var b={ a : a }

4.定义对象时,方法的简写

var a={
  m (){}
}
/* 等价于:
var a={
  m : function(){}
}
*/


使用[]可创建变量值的方法名

var m='method';
var a={
  [m] (){}
}
/*此时方法应该如下调用:
a.method()
*/

5.对象的属性的类型是字符串

var a={ b:1, 'b-b':2 }//等价于var a={ 'b':1, 'b-b':2 }
console.log( a['b'], a['b-b'] )

由于语法限制,不能直接var a={ b-b:2 }这样。因为-不能出现在变量名,但对象的属性的类型是字符串,所以改用var a={'b-b':2 }是可以的。

上一篇下一篇

猜你喜欢

热点阅读