如何快速地把正数转换成1,负数转换成-1?
既然题主说的是 正数 or 负数 是不是应该考虑0?
function f1(number){
if(+number){
throw new TypeError('只接受number 并且是大于0 or 小于0);
}
return number / Math.abs(number);
}
13 回答13k 阅读
2 回答5.2k 阅读✓ 已解决
7 回答2.2k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.3k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
注意: 由于非0 除以 0 是
Infinity
或-Infinity
,而这两个值不会被判false
,所以下面的f2_ex
就不对了,留下在这里作为警示。@bf 補充:
nodejs 參考值:運行 1000000 次,
f1: 10ms
f2: 1ms
f3: 402ms