Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การใช้ฟังก์ชันที่กำหนดเองเช่นฟังก์ชัน String.prototype.split() ใน JavaScript


ปัญหา

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่อยู่บนวัตถุต้นแบบของคลาส String

ควรใช้ตัวคั่นสตริงเป็นอาร์กิวเมนต์เดียว (แม้ว่าฟังก์ชัน split ดั้งเดิมจะมีสองอาร์กิวเมนต์) และฟังก์ชันของเราควรส่งคืนอาร์เรย์ของส่วนของสตริงที่คั่นและแยกด้วยตัวคั่น

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const str = 'this is some string';
String.prototype.customSplit = (sep = '') => {
   const res = [];
   let temp = '';
   for(let i = 0; i < str.length; i++){
      const el = str[i];
      if(el === sep || sep === '' && temp){
         res.push(temp);
         temp = '';
      };
      if(el !== sep){
         temp += el;
      }
   };
   if(temp){
      res.push(temp);
      temp = '';
   };
   return res;
};
console.log(str.customSplit(' '));

ผลลัพธ์

[ 'this', 'is', 'some', 'string' ]