慕盖茨4494581
第二种合法适因为满足{key:value}的形式,value表示的范围很大可以是很多合法语句,声明、运算、赋值、iife...,function(){}.bind()就是合法语句;第一种ES6的简写可以理解成{ value, func(){}}被解析成{ value: value, func: function(){}}的形式,但是并不会把 value + 1, func(){}.bind()解析成{ value: value + 1, func: function(){}.bind()}的形式,换句话说,如果你那种形式合法var a = { success(){}, success(){}.bind({a:1}), success(){}.bind({a:2})}那你如何区分a.success