let const var
let 块级作用域。不能重复申明。
const 常量,块级作用域。不能重复申明
var 函数级作用域
箭头函数(类似python lambda)
()=>{}
当有且仅有1个参数,()可省
当有且仅有1个return,{return}可省略
参数
(a,b,...args)
或者用于数组展开
arr=[1,2,3]
alert(...arr) 弹窗3次分别显示1 2 3
alert(arr) 痰喘1次显示1,2,3
解构赋值
结构相同,申明赋值同时进行。
类似python 如let [a,b,c]=[1,2,3]
let {a,b,c}={a:11,b:12,c:13};alert(b) // 显示12
模版字符串
面向对象
继承写法extends类似java略。
json对象
parser与stringify
简写1 kv相同写k
简写2
数组
map 输入数与输出数相同
let arr=[11,22,33,60,99] let arr2=arr.map(item => item >=60? 'jige':'nonono') console.log(arr2)
reduce 一堆出来一个。 测试reduce 会依次遍历数组(tmp,item, index)
代码: 如果没有return ,迭代的tmp会变undefined除了第一次。
let arr=[10,11,12,13] let arr2 = arr.reduce(function (tmp, item, index) { console.log(tmp+' '+item+' '+index) return tmp+item })