在我的网络应用程序中,我使用ajax生成序列号。序列号始终为10位数。因此,如果在开始时附加少于10位数的“0”。
我正在进行ajax调用,该方法将序列号返回为108而不是“0000000154”。
我可以在我的java函数中将“0000000154”作为String获取,但是当我在javascript中获得此值时,它显示为108。
为什么会这样?
下面是我在后端的java代码
@RequestMapping(value = "/genNextSerialNumber", method = RequestMethod.GET)
public @ResponseBody
String genNextSerialNumber() {
log.info("generating serial number");
String serialNumber= employeeService.genNextSerialNumber();
return serialNumber;
}
以下是我的前端代码。
$.getJSON(url +"?t="+getTimestamp(), function(nextSerialNumber) {
var nextSerialNumberObj = document.getElementById("nextSerialNumber");
alert(nextSerialNumber);
nextSerialNumberObj .value = nextSerialNumber;
});
答案 0 :(得分:2)
除非发送给您的数据是String
形式,否则您无法对其执行任何操作。带前导零的整数are in octal form。
类似这样的事情
{
"foo":0000000012 //gives me a "10". octal
}
不同于:
{
"foo":"0000000012" //gives "0000000012"
}