1. เกี่ยวกับอาร์เรย์
การสร้างอาร์เรย์มีความยืดหยุ่นมาก คุณสามารถใช้ตัวสร้างอาร์เรย์หรือสร้างอาร์เรย์ "ตัวอักษร" โดยตรง
var arr = new Array (); // [] var brr = array (); // [] ทั้งสองเทียบเท่ากับ var arr = array (3); // [[[likearr.length; // 3 อาร์เรย์ว่างเปล่าที่มีความยาว 3 var arr = อาร์เรย์ (22,33, 'qq', {}); // [22, 33, "qq", object] var brr = [22,33, 'qq', {}]; // เหมือนกับข้างบนอาร์เรย์เป็นวัตถุในตัวสำหรับ JavaScript ใช่แม้ว่ามันจะเป็นอาร์เรย์ แต่ก็เป็นวัตถุ! -
ใช้ typeof เพื่อตัดสินจะส่งคืนวัตถุ! วิธี Array.isArray สามารถกำหนดประเภทของมันได้อย่างแม่นยำยิ่งขึ้น
var a = []; typeof a; //objectarray.isarray(a); //จริง
2. วิธีการทั่วไป
push () วิธีการ
วิธี push สามารถเพิ่มองค์ประกอบหนึ่งอย่างหรือมากกว่านั้นในตอนท้ายของอาร์เรย์และส่งคืนความยาวของอาร์เรย์ที่เปลี่ยนแปลง!
หมายเหตุ: ①มันส่งคืนความยาวของอาร์เรย์ไม่ใช่อาร์เรย์!
②วิธีนี้จะเปลี่ยนอาร์เรย์ดั้งเดิม! -
var arr = array (22,33, 'qq', {}); arr.push ('weibo'); // 5arr // [22, 33, "qq", {}, "Weibo"]นี่คือสิ่งที่เราต้องใช้เมื่อเราต้องการรวมสองอาร์เรย์
var a = [22,33]; var b = [44,55]; array.prototype.push.apply (a, b) // หรือ a.push.apply (a, b) // หรือ a.push (44,55); // array a = [22,33,44,55];
ระวังอย่าเขียนสิ่งต่อไปนี้! -
A.push (b); a; // 2,22,33, 44,55 เหมือนกันเหมือนกัน. ความยาว; // 3 !! console.log (a); // [22, 33, อาร์เรย์ [2]]
การเขียนโดยตรงเป็น a.push(b) จะเพิ่ม B เป็นองค์ประกอบให้กับ A และมันจะไม่ได้รับเอฟเฟกต์ในอุดมคติ!
หากอาร์เรย์วัตถุสองอันต้องถูกรวมเข้าด้วยกันเช่นนี้:
var a = [{name: 'Stark', ค่า: 'Ironman'}, {ชื่อ: 'cap', ค่า: 'oldman'}]; var b = [{ชื่อ: 'jerry', อีเมล: '[email protected]'}, {ชื่อ: 'lory', อีเมล: '[email protected]' A.push (b); //3console.log(a); // [วัตถุ, วัตถุ, อาร์เรย์ [3]] // การเขียนที่ถูกต้อง a.push.apply (ab); //5console.log(a); // [วัตถุ, วัตถุ, วัตถุ, วัตถุ, วัตถุ]วิธีป๊อป ()
ตรงกันข้ามกับ push คือการลบองค์ประกอบสุดท้ายของอาร์เรย์และส่งคืนองค์ประกอบที่ถูกลบ:
var a = ['qq', 'weibo', 'weixin']; a.pop (); // 'weixin'a; // ['qq', 'weibo']
เข้าร่วม () วิธีการ
แยกอาร์เรย์ด้วยพารามิเตอร์ที่สอดคล้องกันและส่งคืนเป็นสตริง หากพารามิเตอร์ว่างเปล่าให้ใช้ ',' เพื่อแยกออก วิธีนี้ไม่ได้เปลี่ยนอาร์เรย์ดั้งเดิม:
var a = [1, 2, 3, 4]; a.join ('') // '1 2 3 4'a.join (' | ') // "1 | 2 | 3 | 4" var b = a.join () // "1,2,3,4" console.log (a); // [1,2,3,4] console.log (b); // "1,2,3,4"วิธีการ concat ()
มันสามารถรวมตัวเลขหลายตัวและส่งคืนอาร์เรย์ใหม่ แต่อาร์เรย์ดั้งเดิมยังคงไม่เปลี่ยนแปลง:
var a = [22,33]; var b = [44,55]; var c = a.concat (b); console.log (a); // [22, 33] console.log (b); // [44, 55] console.log (c); // [22, 33, 44, 55]
var a = [{ชื่อ: 'ทอม', อีเมล: '[email protected]'}, {ชื่อ: 'ปีเตอร์', อีเมล: '[email protected]'}]; var b = [{ชื่อ: 'jerry', อีเมล: '[email protected]' '[email protected]'}]; var c = a.concat (b); c; // [{ชื่อ: 'ทอม', อีเมล: '[email protected]'}, // {ชื่อ: 'ปีเตอร์', อีเมล: '[email protected]'}, // {ชื่อ: 'peter', อีเมล: '[email protected]' '[email protected]'}, // {ชื่อ: 'susan', ค่า: '[email protected]'}]แผนที่ () วิธีการ
วิธี map จะเรียกฟังก์ชั่นในสมาชิกแต่ละคนของอาร์เรย์ในการส่งคืนอาร์เรย์ใหม่ที่ประมวลผลโดยฟังก์ชั่น แต่อาร์เรย์ดั้งเดิมจะไม่เปลี่ยนแปลง!
ตัวเลข var = [1, 2, 3]; var num = numbers.map (ฟังก์ชัน (n) {// [2, 4, 6] ส่งคืน n * 2;}); ตัวเลข; // [1,2,3] เมื่อพารามิเตอร์ของฟังก์ชั่นที่เรียกโดยวิธี map คือหนึ่งพารามิเตอร์นี้แสดงถึงสมาชิกปัจจุบันของอาร์เรย์ เมื่อพารามิเตอร์เป็นสาม
สมาชิกปัจจุบัน elem index ดัชนีอาร์เรย์ดั้งเดิมเอง arr
var brr = [1, 2, 3] .map (ฟังก์ชั่น (elem, ดัชนี, arr) {return elem *}}); brr; // [0, 2, 6] วิธี map ยังสามารถยอมรับพารามิเตอร์ที่สองซึ่งระบุวัตถุที่ชี้ไปที่ this เมื่อฟังก์ชั่นการโทรกลับถูกดำเนินการ
var arr = ['a', 'b', 'c']; var brr = [0, 2] .map (ฟังก์ชัน (e) {ส่งคืนสิ่งนี้ [e];}, arr) brr; // ['A', 'C'] ในแอปพลิเคชันบางครั้งเมื่อใช้เทคโนโลยี AJAX ต้องแปลงอาร์เรย์พารามิเตอร์แบบไดนามิกเป็นคำขอ URL วิธี map จะสะดวกมากเช่น:
var b = [{ชื่อ: 'Jerry', อีเมล: '[email protected]'}, {ชื่อ: 'lory', อีเมล: '[email protected]'}, {ชื่อ: 'susan', ค่า: '[email protected]'}]; var url = b แผนที่ (ฟังก์ชัน (n) {return n.name + "=" + n.email}) .oin ("&"); console.log (url); //[email protected]&[email protected]&[email protected]จากนั้นเพิ่มที่อยู่ IP การดำเนินการและวิธีการก่อนที่ URL จะเสร็จสิ้นการประกบ URL แบบไดนามิกที่ AJAX ต้องการเช่น:
var endurl = "localhost: 8080/xxxx/" + eventaction + "!" + การดำเนินการ + "?" + url;
สรุป
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นความช่วยเหลือในการศึกษาหรือทำงานของทุกคน หากคุณมีคำถามใด ๆ คุณสามารถฝากข้อความไว้เพื่อสื่อสาร