カレンダーの月表示で数字を二桁に揃えたい
下記のコードを実行すると、10月、11月、12月のセレクトボックスの表示が010月、011月、012月になってしまうのですが、0を無くす書き方を教えて頂きたいです。
HTML
<input name="textYear"> 年
<select name="selectMonth"></select> 月
Javascript
$(function(){
$('input[name="textYear"]').on('change keyup',function(){
$('select[name="selectMonth"] option').remove();
$('select[name="selectMonth"]').append($("<option></option>"));
if($(this).val() != ""){
for(i=4;i<=15;i++){
let m = (i<13)?i:(i-12);
m =('0' + m).slice(-length);
let y = (i<13)?$(this).val():parseInt($(this).val())+1;
let op =$("<option></option>",{
value:y+m,
html:y+"年"+m+"月"
});
$('select[name="selectMonth"]').append(op);
}
}
});
});
最後にこのコードですが、4は4月から始まるから4で15はなぜ15という数字が出てきたのか教えて頂きたいです。あと、13とー12の意味も教えて頂きたいです。
for(i=4;i<=15;i++){
let m = (i<13)?i:(i-12);