我有一个Number类型的变量,我想获得符号(如果是' - '我喜欢-1,如果'+'我想要1).所以,我做了这个:
var sign = Math.abs(n) / n;
但是,还有其他方法吗?比这更好?
如果n == 0,你会遇到麻烦......这个怎么样:
var sign = n < 0 ? -1 : 1;
如果n为零,那将给你一个错误.
蛮力方法:
function sign(num) { if(num > 0) { return 1; } else if(num < 0) { return -1; } else { return 0; } }
或者,对于那些喜欢条件运算符的人:
function sign(num) { return (num > 0) ? 1 : ((num < 0) ? -1 : 0); }