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

วิธีที่ดีที่สุดในการหาสองตัวเลขในอาร์เรย์ที่ผลรวมเป็นตัวเลขเฉพาะด้วย JavaScript?


สมมติอาร์เรย์ของเราเป็นดังนี้

var numbers = [10,3,40,50,20,30,100]

เราต้องค้นหาสองตัวเลขจากองค์ประกอบอาร์เรย์ข้างต้น ที่ผลรวมเป็น 80

สำหรับเรื่องนี้ ใช้ for loop ธรรมดาพร้อมเงื่อนไข if

ตัวอย่าง

function specificPairsOfSumOfTwoNumbers(numbers, totalValue) { var storeTwoNumbersObject = {} for(var currentNumber of numbers) { if(storeTwoNumbersObject[currentNumber]) { return { firstNumber: totalValue-currentNumber, secondNumber:currentNumber} } storeTwoNumbersObject[totalValue-currentNumber] = true; } return false; } var numbers = [10,3,40,50,20,30,100] console.log("The Two numbers which has the sum 80="); console.log(specificPairsOfSumOfTwoNumbers(numbers, 80) )

เพื่อรันโปรแกรมด้านบน คุณต้องใช้คำสั่งต่อไปนี้

node fileName.js.

ที่นี่ชื่อไฟล์ของผมคือ demo207.js

ผลลัพธ์

จะได้ผลลัพธ์ดังนี้

PS C:\Users\Amit\javascript-code> node demo207.js The Two numbers which has the sum 80= { firstNumber: 50, secondNumber: 30 }