我在 JavaScript 中遇到奇怪的转换:
function getFromDatabase(){
//the result may be gotten from database or some complex methods and CANT be changed!
return 000000;
}
var param = getFromDatabase();
alert(param);// -> 0
alert(param.toString());// -> 0
alert("" +param + "");// -> 0
我怎样才能得到 000000 或“000000”?
最佳答案
如果你想区分 000000 和 0,你做不到。 000000 在离开函数之前被“转换”为 0。
如果你想打印前导零,试试类似
function intToLeadingZerosString(myint){
var s= myint.toString(10);
return Array( 6-s.length+1 ).join("0") + s;
}
alert(intToLeadingZerosString(param));
或者:
Number.prototype.toStringLeading = function() {
var s = this.toString(10);
return Array( (arguments.length?arguments[0]:6)-s.length+1 ).join("0") + s;
};
alert(param.toStringLeading(6));
alert(param.toStringLeading());
关于JavaScript 将 int 转换为 String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22932528/