i = i ? i < 0 ? Math.max( 0, len + i ) : i : 0;
先逐个表达式翻译
if (i) //非零
{
if (i < 0)
{
i = Math.max( 0, len + i );
}
/* 可以省略,保持不变
else
{
i = i;
}
*/
}
/* 可以省略,已经等于 0 了
else
{
i = 0;
}
*/
可以简化为
if (i < 0)
i = Math.max( 0, len + i );
if(i){
if(i<0){
i = Math.max(0,len+i);
}else{
i = i ;
}
}else{
i = 0 ;
}