!param && (param = {});
我知道上面这句话的意思是
if(!param) { param = {} }
我想知道的是后面的 && (param = {}) 该怎么读,怎么理解。
&& (param = {})
!param 返回为true的时候,执行param = {}这个代码。
如果param不存在(null,undefined,0,false),就给param赋值为{};
后面是一个赋值操作,把{}赋值给param变量
!param && (param = {});param非真,并且param={},这条语句就执行结束。强烈不推荐前面的写法,看起来方便酷炫,实际可读性差