Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

วิธี取得เฉพาะ n% แรกของอาร์เรย์ใน JavaScript

เราต้องเขียนฟังก์ชันรับอาร์เรย์ arr และตัวเลข n ระหว่าง 0 ถึง 100 (รวม) คืนส่วนน% ของอาร์เรย์ เช่น ถ้าอาร์กิวเมนต์ที่สองเป็น 0 ควรได้อาร์เรย์ว่าง ถ้า 100 ได้อาร์เรย์ทั้งหมด ถ้า 50 ได้ครึ่งหนึ่ง

ถ้าไม่ระบุอาร์กิวเมนต์ที่สอง ค่าเริ่มต้นคือ 50 โค้ด

ตัวอย่าง

const numbers = [3,6,8,6,8,4,26,8,7,4,23,65,87,98,54,32,57,87];
const byPercent = (arr, n = 50) => {
  const { length } = arr;
  const requiredLength = Math.floor((length * n) / 100);
  return arr.slice(0, requiredLength);
};
console.log(byPercent(numbers));
console.log(byPercent(numbers, 84));
console.log(byPercent(numbers, 34));

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็น

[ 3, 6, 8, 6, 8, 4, 26, 8, 7 ]
[ 3, 6, 8, 6, 8, 4, 26, 8, 7, 4, 23, 65, 87, 98, 54 ]
[ 3, 6, 8, 6, 8, 4 ]