สัญลักษณ์นี้หมายความว่าอย่างไรใน JavaScript?


86

นี่คืออะไร?

นี่คือชุดคำถามที่เกิดขึ้นเป็นระยะ ๆ เกี่ยวกับไวยากรณ์ใน JavaScript นี่เป็น Community Wiki ด้วยดังนั้นทุกคนจึงได้รับเชิญให้มีส่วนร่วมในการรักษารายการนี้

ทำไมถึงเป็นแบบนี้?

Stack Overflow ไม่อนุญาตให้ค้นหาอักขระเฉพาะ ด้วยเหตุนี้จึงไม่พบคำถามมากมายเกี่ยวกับตัวดำเนินการและโทเค็นไวยากรณ์อื่น ๆ โดยง่ายเมื่อค้นหา นอกจากนี้ยังทำให้การปิดรายการซ้ำทำได้ยากขึ้น รายการด้านล่างนี้จะช่วยแก้ปัญหานี้

แนวคิดหลักคือการมีลิงก์ไปยังคำถามที่มีอยู่ใน Stack Overflow ดังนั้นจึงง่ายกว่าสำหรับเราที่จะอ้างอิงคำถามเหล่านี้โดยไม่ต้องคัดลอกเนื้อหาจาก ECMAScript Spec

นอกจากนี้นี่เป็นสำเนาที่ชัดเจนของการอ้างอิงสัญลักษณ์PHP เราต้องการ JS หนึ่ง


กรุณาช่วย. แก้ไขและเพิ่มลิงก์ไปยังตัวดำเนินการ / การอ้างอิงไวยากรณ์อื่น ๆ หรือหากคุณไม่พบคำถาม / คำตอบที่ดีในส่วนของไวยากรณ์ใด ๆ ให้เพิ่มคำตอบสำหรับคำถามนี้และเชื่อมโยง


@amnotiam: ไม่สำคัญจริงๆ แต่อาจจะค้นหา / จดจำได้ง่ายกว่าโพสต์ใด ๆ ที่ลิงก์ไปยัง ฉันมีดังกล่าวหรือไม่การค้นหาเวลาที่ยากลำบากสำหรับข้อมูลเกี่ยวกับ|ผู้ประกอบการ PHP รุ่นที่ได้รับประโยชน์มากเป็นไปเพื่อหลอกสำหรับปิด
Wesley Murch

1
ฉันมีความเห็นว่าควรยกเว้นการเปลี่ยนแปลงนโยบายอย่างเป็นทางการ ... หรือบางทีอาจจะถูกเพิ่มลงใน tag-wiki แต่ wiki ดูเหมือนจะไม่ใช่สถานที่ที่เหมาะสมสำหรับเนื้อหานี้ ดูเหมือนว่าแม้จะไม่มี 'คำตอบ' ใด ๆ เช่น 'คำถามที่ยอมรับได้' มากพอที่ฉันอยากจะเปิดขึ้นมาใหม่ แม้ว่าฉันจะยอมให้มีการตรวจสอบ mod
เดวิดกล่าวว่าคืนสถานะโมนิกาใน

1
@David Thomas: น่าเสียดายที่แท็กวิกิยังห่วยอยู่ ด้วยเหตุนี้แม้แต่คำถามเกี่ยวกับหนังสือก็ยังคงเป็นคำถามในปัจจุบัน
BoltClock

@ruakh ยังเห็นวิกิชุมชนที่เป็นที่ชื่นชอบอย่างชัดเจนนี้: stackoverflow.com/questions/388242/… - เนื้อหาส่วนใหญ่ในคำถามพร้อมคำตอบที่เพิ่มข้อมูลเพิ่มเติม นั่นคือความคิดที่นี่
Thomas Shields

@ruakh ฉันย้อนกลับไปเพื่อให้พอดีกับรูปแบบของคำถาม PHP ที่เชื่อมโยง - ซึ่งฉันอาจทราบว่าไม่ได้ถูกปิดหรือเปลี่ยนรูปแบบ การรวบรวมรายการคำถามที่พบบ่อยในรูปแบบวิกิชุมชนนั้นง่ายกว่าการถามคำถามที่กว้างมาก (ตามที่คุณแก้ไข) และต้องเรียกดูคำตอบหลายสิบข้อเพื่อพยายามหาคำถามที่คุณต้องการ ฉันจะไปกับชุมชนนี้ แต่จนถึงตอนนี้ดูเหมือนว่าคนทั่วไปจะชอบที่เป็นอยู่
Thomas Shields

คำตอบ:


175

ดูเอกสารเกี่ยวกับ MDN เกี่ยวกับการแสดงออกและผู้ประกอบการและงบ

คำหลักพื้นฐานและนิพจน์ทั่วไป

this คำสำคัญ:

var x = function()เทียบกับfunction x() - ไวยากรณ์การประกาศฟังก์ชัน

(function(){})() - IIFE (เรียกใช้ฟังก์ชันนิพจน์ทันที)

someFunction()() - ฟังก์ชั่นที่ส่งคืนฟังก์ชันอื่น ๆ

=> - เครื่องหมายเท่ากับมากกว่า: ไวยากรณ์นิพจน์ฟังก์ชันลูกศร

|> - ท่อมากกว่า: ตัวดำเนินการท่อ

function*, yield, yield* - สตาร์หลังfunctionหรือyield: ฟังก์ชั่นเครื่องกำเนิดไฟฟ้า

[], Array() - วงเล็บเหลี่ยม: สัญกรณ์อาร์เรย์

{key: value} - วงเล็บปีกกา: ไวยากรณ์ตามตัวอักษรของวัตถุ

`... ${... }... ` - Backticks, เครื่องหมายดอลลาร์ด้วยวงเล็บปีกกา: แม่แบบตัวอักษร

// - เครื่องหมายทับ: ตัวอักษรนิพจน์ทั่วไป

$ - สัญญาณดอลลาร์ใน regex เปลี่ยนรูปแบบ: $$, $&, $`, $',$n

() - วงเล็บ: ตัวดำเนินการจัดกลุ่ม


นิพจน์ที่เกี่ยวข้องกับคุณสมบัติ

obj.prop, obj[prop], obj["prop"] - วงเล็บสแควร์หรือจุด: คุณสมบัติ accessors

?., ?.[], ?.() - เครื่องหมายคำถาม, ดอท: ผู้ประกอบการผูกมัดตัวเลือก

:: - เครื่องหมายทวิภาคคู่: ตัวดำเนินการผูก

new ตัวดำเนินการ

...iter - สามจุด: ไวยากรณ์การแพร่กระจาย; พารามิเตอร์ส่วนที่เหลือ


การเพิ่มและลด

++, -- - บวกสองเท่าหรือลบ: ตัวดำเนินการก่อน / หลังการเพิ่ม / -decrement


ตัวดำเนินการยูนารีและไบนารี (เลขคณิตตรรกะบิตตาม)

delete ตัวดำเนินการ

void ตัวดำเนินการ

+, - - บวกและลบ: การบวกหรือการเรียงต่อกันและตัวดำเนินการลบ ตัวดำเนินการเครื่องหมายยูนารี

|, &, ^, ~ - ท่อโสด, เครื่องหมาย, หมวก, ตัวหนอน: OR ระดับบิตและแฮคเกอร์และผู้ประกอบการไม่ได้

&&, ||, ! - ดับเบิลเครื่องหมายท่อคู่อัศเจรีย์: ดำเนินการทางตรรกะ

?? - เครื่องหมายคำถามคู่: ตัวดำเนินการเชื่อมต่อที่ว่างเปล่า

** - ดาวคู่: ตัวดำเนินการกำลัง (เลขชี้กำลัง)


ตัวดำเนินการที่เท่าเทียมกัน

==, === - เครื่องหมายเท่ากับ: ตัวดำเนินการความเท่าเทียมกัน

!=, !== - เครื่องหมายอัศเจรีย์และเครื่องหมายเท่ากับ: ตัวดำเนินการอสมการ


ตัวดำเนินการกะบิต

<<, >>, >>> - สองหรือสามวงเล็บมุม: ประกอบกะบิต


ตัวดำเนินการตามเงื่อนไข

... ?... :... - เครื่องหมายคำถามและลำไส้ใหญ่: เงื่อนไข (ternary) ผู้ประกอบการ


ตัวดำเนินการมอบหมาย

= - เครื่องหมายเท่ากับ: ตัวดำเนินการกำหนด

%= - เปอร์เซ็นต์เท่ากับ: การกำหนดส่วนที่เหลือ

+= - บวกเท่ากับ: ตัวดำเนินการกำหนดเพิ่มเติม

&&=, ||=, ??= - ดับเบิลเครื่องหมายท่อหรือเครื่องหมายคำถามตามด้วยเครื่องหมายเท่ากับ: ได้รับมอบหมายตรรกะ

การทำลายล้าง


ตัวดำเนินการจุลภาค

, - ตัวดำเนินการจุลภาค


ประกาศ

var, let, const - ตัวแปรประกาศ


ฉลาก

label: - โคลอน: ป้ายกำกับ


# - แฮช (เครื่องหมายตัวเลข): ​​วิธีการส่วนตัวหรือฟิลด์ส่วนตัว

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.