我喜欢那些简短的js oneliners.我想知道是否有符合逻辑和优雅的东西:
比这更短的;)
var obj = {} ;
//some iterative called function
obj.prop = obj.prop===undefined?0:obj.prop++;
Run Code Online (Sandbox Code Playgroud)
I H*_*azy 42
这将导致NaN第一个增量,默认为0.
obj.prop = ++obj.prop || 0;
Run Code Online (Sandbox Code Playgroud)
Bog*_*n D 32
更简洁的方法就是这样做
obj.prop = obj.prop + 1 || 0;
Run Code Online (Sandbox Code Playgroud)
使用增量运算符是错误的或过度的.后缀运算符x++(问题中的示例)根本不起作用.前缀,++x导致分配两次(如说x = x = x+1)