เราจำเป็นต้องเขียนฟังก์ชันโดยพูดว่า breakString() ที่มีสองอาร์กิวเมนต์:อันดับแรก สตริงที่จะขาดและที่สอง ตัวเลขที่แสดงถึงจำนวนขีดจำกัดของอักขระหลังจากเข้าถึง ซึ่งเราต้องเพิ่มตัวแบ่งบรรทัดซ้ำๆ แทนช่องว่าง
ตัวอย่างเช่น −
รหัสต่อไปนี้ควรผลักตัวแบ่งบรรทัดที่ช่องว่างที่ใกล้ที่สุด ถ้าอักขระ 4 ตัวผ่านไปโดยไม่ขึ้นบรรทัดใหม่ -
const text = 'Hey can I call you by your name?'; console.log(breakString(text, 4));
ผลลัพธ์ที่คาดหวัง -
Hey can I call you by your name?
ดังนั้น เราจะวนซ้ำโดยใช้ a for วนซ้ำ เราจะนับจำนวนอักขระที่ผ่านไปด้วยการแทรก '\ n' หากการนับเกินขีดจำกัด และเราพบช่องว่างที่เราแทนที่ด้วยตัวแบ่งบรรทัดในสตริงใหม่ และ รีเซ็ตการนับเป็น 0 มิฉะนั้น เราจะใส่อักขระสตริงเดิมในสตริงใหม่และเพิ่มจำนวนขึ้นเรื่อยๆ
รหัสเต็มสำหรับสิ่งเดียวกันจะเป็น -
ตัวอย่าง
const text = 'Hey can I call you by your name?'; const breakString = (str, limit) => { let brokenString = ''; for(let i = 0, count = 0; i < str.length; i++){ if(count >= limit && str[i] === ' '){ count = 0; brokenString += '\n'; }else{ count++; brokenString += str[i]; } } return brokenString; } console.log(breakString(text, 4));
ผลลัพธ์
เอาต์พุตคอนโซลจะเป็น −
Hey can I call you by your name?