เราต้องเขียนฟังก์ชันที่รับสตริงที่อาจมีตัวเลขฝังอยู่ ดึงตัวเลขทั้งหมดออกมาและรวมเป็นตัวเลขใหม่ หากไม่มีตัวเลข ให้คืน 0
ตัวอย่าง: 'sfsd8fsdf6dsfsd8sdfs28fd0' → 868280
ตัวอย่างโค้ด
const str = 'sfsd8fsdf6dsfsd8sdfs28fd0';
const pickNumbers = (str = '') => {
let res = 0;
for (let i = 0; i < str.length; i++) {
const el = str[i];
if (+el) { res = (res * 10) + +el; }
}
return res;
};
console.log(pickNumbers(str));
console.log(pickNumbers('this string contains no numbers'));
ผลลัพธ์
ค่าที่แสดงในคอนโซลจะเป็นดังนี้:
86828 0