Kaedah subrentetan 3 js untuk melaksanakan kemahiran string_javascript

WBOY
Lepaskan: 2016-05-16 15:33:04
asal
2029 orang telah melayarinya

Baru-baru ini saya menemui soalan, "Bagaimana untuk menggunakan JavaScript untuk melaksanakan kaedah subrentetan rentetan pada masa ini saya mempunyai tiga penyelesaian berikut dalam fikiran:
Kaedah 1: Gunakan charAt untuk mengekstrak bahagian yang dipintas:

String.prototype.mysubstring=function(beginIndex,endIndex){
  var str=this,
    newArr=[];
  if(!endIndex){
    endIndex=str.length;
  }
  for(var i=beginIndex;i<endIndex;i++){
    newArr.push(str.charAt(i));
  }
  return newArr.join("");
}

//test
"Hello world!".mysubstring(3);//"lo world!"
"Hello world!".mysubstring(3,7);//"lo w"
Salin selepas log masuk

Kaedah 2: Tukar rentetan ke dalam tatasusunan dan keluarkan bahagian yang diperlukan:

String.prototype.mysubstring=function(beginIndex,endIndex){
  var str=this,
    strArr=str.split("");
  if(!endIndex){
    endIndex=str.length;
  }
  return strArr.slice(beginIndex,endIndex).join("");
}

//test
console.log("Hello world!".mysubstring(3));//"lo world!"
console.log("Hello world!".mysubstring(3,7));//"lo w"


Salin selepas log masuk

Kaedah 3: Keluarkan bahagian kepala dan ekor, kemudian gunakan ganti untuk mengeluarkan bahagian yang berlebihan Ia sesuai untuk situasi di mana beginIndex kecil dan string length-endIndex kecil:

String.prototype.mysubstring=function(beginIndex,endIndex){
  var str=this,
    beginArr=[],
    endArr=[];
  if(!endIndex){
    endIndex=str.length;
  }
  for(var i=0;i<beginIndex;i++){
    beginArr.push(str.charAt(i));
  }
  for(var i=endIndex;i<str.length;i++){
    endArr.push(str.charAt(i));
  }
  return str.replace(beginArr.join(""),"").replace(endArr.join(""),"");
}

//test
console.log("Hello world!".mysubstring(3));//"lo world!"
console.log("Hello world!".mysubstring(3,7));//"lo w"
Salin selepas log masuk

Anda boleh mencuba tiga kaedah subrentetan rentetan dalam js dan bandingkan kaedah mana yang lebih mudah.

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!