javascript - Ajax 调用将 "0000000154"返回为 108

标签 javascript ajax return-value jquery-callback

在我的 Web 应用程序中,我使用 ajax 生成序列号。序列号始终为 10 位数字。因此,如果少于 10 位数字,则在开头附加“0”。

我正在进行 ajax 调用,该方法返回的序列号为 108,而不是“0000000154”。

我可以在我的java函数中得到“0000000154”作为字符串,但是当我在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;
});

最佳答案

除非发送给您的数据采用String 形式,否则您无法对其执行任何操作。带有前导零的整数 are in octal form .

类似这样的事情

{
    "foo":0000000012 //gives me a "10". octal
}

不同于:

{
    "foo":"0000000012" //gives "0000000012"
}

关于javascript - Ajax 调用将 "0000000154"返回为 108,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10379244/

相关文章:

php - 5 分钟长轮询示例的简单指南不起作用

javascript - OPTIONS 405(方法不允许)

bash - 如何设置$?或 Bash 中的返回码?

javascript - 将 javascript 从 onclick 转换为 onhover

javascript - 如何在init之后重置数据,Select2

php - JQuery Ajax Tagit 数组到 PHP 返回 [object Object]

java - 当 boolean 为 true 时返回 String 值

查看 'puts'返回值,然后呢?

javascript - chrome.webRequest redirectUrl,URL 保存在 chrome.storage.local 中

javascript - Cordova:卡在 createbanner() 上的 AdModPro 插件