我喜歡在數字中加上(+1)。但問題是我的號碼有時可能在0之前。像01,02,03,04。所以我喜歡的結果是:Javascript:將+1加1以0開頭的數字(如01,02,03)並保留爲零
mockup01 + 1 = mockup02
mockup11 + 1 = mockup12
這怎麼能實現?我將如何使用它的例子是,如果我的文件名命名mockup_01.htm並將其更改爲mockup_02.htm
謝謝!
我喜歡在數字中加上(+1)。但問題是我的號碼有時可能在0之前。像01,02,03,04。所以我喜歡的結果是:Javascript:將+1加1以0開頭的數字(如01,02,03)並保留爲零
mockup01 + 1 = mockup02
mockup11 + 1 = mockup12
這怎麼能實現?我將如何使用它的例子是,如果我的文件名命名mockup_01.htm並將其更改爲mockup_02.htm
謝謝!
也許這
next = (parseInt(number, 10) + 101).toString().substr(1)
做出mockup_02.htm出mockup_01試試這個
newName = fileName.replace(/\d+(?=\.)/, function(n) {
return (parseInt(n, 10) + Math.pow(10, n.length) + 1).toString().substr(1)
});
這適用於任何長度,例如數mockup_0001,mockup_000001等
我不是一個JavaScript程序員,但它似乎像混合了演示文稿和內部表示法。如果「01」是一個帶有相應整數變量的字符串,則可以從字符串轉換爲整數,然後添加1,然後創建一個具有所需格式的新字符串。這有時被稱爲模型 - 視圖 - 控制器模式。模型是整數變量 - 它模擬數字的內部行爲。視圖是字符串 - 它以可讀的方式呈現數字。控制器處理數字操作。
function next_id(input) {
var output = parseInt(input, 10)+1; // parse and increment
output += ""; // convert to string
while (output.length<2) output = "0"+output; // prepend leading zeros
return output;
}
var id = "00";
for (var i=0; i<20; i++) {
console.log(id);
id = next_id(id);
}
+1 - 通過獲得'var desiredLength =(''+ input).length'然後執行'while(output.length
+1記住,否則,它將解析以0開頭的八進制數(「031」將變爲25)。 – 2010-03-22 21:33:29
輝煌!謝謝! – 2010-03-22 21:36:01
想知道如果你知道它如何工作,如果我想包括整個字符串...就像 mockup_01.htm到mockup02.htm – 2010-03-22 21:38:12