ไม่มากรหัสสำหรับการลบข้อมูลที่ซ้ำกันออกจากอาร์เรย์ JS มีดังนี้:
var arr = [1,2,3,4,5,6,1,6,6,7,2]; var newarr = []; สำหรับ (var i = 0; i <arr.length -1; i ++) {ถ้า (newarr.indexof (arr [i]) == -1) {newarr.push (arr [i]); -มาแบ่งปันการลบซ้ำที่มีประสิทธิภาพในอาร์เรย์ JS กับคุณ
ประเภทอาร์เรย์ไม่ได้ให้วิธีการทำซ้ำ หากคุณต้องการฆ่าองค์ประกอบที่ซ้ำกันของอาร์เรย์คุณต้องคิดถึงวิธีแก้ปัญหา:
ฟังก์ชั่นที่ไม่ซ้ำกัน (arr) {var result = [], isrepeated; สำหรับ (var i = 0, len = arr.length; i <len; i ++) {isrepeated = false; สำหรับ (var j = 0, len = result.length; j <len; j ++) {ถ้า (arr [i] == {result.push (arr [i]);}} return result;}แนวคิดโดยรวมคือการขนส่งองค์ประกอบอาร์เรย์ไปยังอาเรย์อื่นทีละตัวและตรวจสอบว่าองค์ประกอบนี้ซ้ำกันในระหว่างกระบวนการถ่ายโอนและหากมีหนึ่งให้ทิ้งมันโดยตรง ดังที่เห็นได้จากห่วงซ้อนกันวิธีนี้ไม่มีประสิทธิภาพอย่างมาก เราสามารถใช้โครงสร้างแฮชต์เพื่อบันทึกองค์ประกอบที่มีอยู่เพื่อหลีกเลี่ยงลูปภายใน เกิดขึ้นได้ว่าการใช้แฮชแต้มใน JavaScript นั้นง่ายมากและได้รับการปรับปรุงดังนี้:
ฟังก์ชั่นที่ไม่ซ้ำกัน (arr) {var result = [], hash = {}; สำหรับ (var i = 0, elem; (elem = arr [i])! = null; i ++) {ถ้า (! hash [elem]) {result.push (elem); hash [elem] = true;ข้างต้นคือรหัสการใช้งานสำหรับการลบข้อมูลที่ซ้ำกันออกจากอาร์เรย์ JS ที่แนะนำโดยตัวแก้ไขให้คุณ ฉันหวังว่ามันจะเป็นประโยชน์กับคุณ หากคุณมีคำถามใด ๆ โปรดฝากข้อความถึงฉันและบรรณาธิการจะตอบกลับคุณทันเวลา ขอบคุณมากสำหรับการสนับสนุนเว็บไซต์ Wulin.com!