鍍金池/ 問答/HTML/ js字符串拼接

js字符串拼接

后臺讓我給他們傳圖片的時候給圖片排序
我現在取到的圖片地址是
19998321312.jpg

后臺需要的格式是
19998321312_01.jpg
19998321312_02.jpg
19998321312_03.jpg
...
19998321312_10.jpg
19998321312_11.jpg

個位數在前邊加 0
請問我需要怎么拼接

回答
編輯回答
傻丟丟

var arr = ["19998321312.jpg","19998321312.jpg","19998321312.jpg","19998321312.jpg","19998321312.jpg","19998321312.jpg","19998321312.jpg"]
function arrimg() {

var arr2 = [];
 arr.forEach(function(ele,index){  
    arr2.push(arr[index].split('.').join('_'+parseInt(index+1)+'.'));  
  });  
return arr2;

}

2017年11月25日 01:52
編輯回答
笨尐豬

你這個要傳值之前是一個數組嗎?
function handleSort () {
let arr = [19998321312,19998321312,19998321312,19998321312,19998321312,19998321312,19998321312,19998321312,19998321312,19998321312]
let result = []
for (let i = 0; i < arr.length; i++) {

if (i <= 9) {
  arr[i] = arr[i] + '_0' + (i*1+1)
  result.push(arr[i])
} else {
  arr[i] = arr[i] + '_' + i
  result.push(arr[i])
}

}
return result
}
//handleSort()
是的話可以試試

2017年8月31日 05:40
編輯回答
擱淺
  var arr = [{url: '19998321312.jpg'}];
  var result = arr.map((item,index) => {
      var strIndex = index + 1;
      if((strIndex).toString().length===1){
        strIndex = '0' + strIndex;
      }
      var urlIndex = item.url.lastIndexOf('.');
      var beforeUrl = item.url.slice(0, urlIndex);
      var afterUrl = item.url.slice(urlIndex)
      item.url = beforeUrl + '_' + strIndex + afterUrl;
      return item;
  });
  console.log(result); // [{url: "19998321312_01.jpg"}]
  // 多個改下數組arr即可。
2017年4月27日 18:16
編輯回答
別傷我
'19998321312.jpg'.replace(/(\d+)(\.jpg)/g,'$1'+'_01'+'$2')
//"19998321312_01.jpg"
2018年4月9日 02:33