ตัวดำเนินการคณิตศาสตร์
ตัวดำเนินการคณิตศาสตร์
(Arithmetic operator) หมายถึง ใช้สำหรับคำนวณโอประแรนด์ที่เป็นค่าคงที่หรือตัวแปรก็ได้
โดยให้ค่าผลลัพธ์เป็นตัวเลขค่าเดียว โอประเรเตอร์ เชิงคณิตศาสตร์ที่คนส่วนใหญ่รู้จักคุ้นเคยกันมากที่สุดได้แก่
+
หมายถึง เครื่องหมายการบวก
-
หมายถึง เครื่องหมายการลบ
*
หมายถึง เครื่องหมายการคูณ
/
หมายถึง เครื่องหมายการหาร
%
หมายถึง เครื่องหมายหาเศษที่ได้จากการหารที่เรียกว่า
โมดูลัส(Modulus)
++
หมายถึง เครื่องหมายการเพิ่มค่าที่เรียกว่า
อินครีเมนต์(increment) โดยจะเพิ่มค่าครั้งละ
1
--
หมายถึง เครื่องหมายการลดค่าที่เรียกว่า
ดีครีเมนต์(decrement) โดยจะลดค่าครั้งละ
1
(-)
หมายถึง เครื่องหมายแปลงค่าให้กลายเป็นค่าตรงกันข้ามกับค่าเดิมที่เรียกว่า
ยูนารีนีเกชัน (unary negation)
เช่น
x = 20 % 3; ผลลัพธ์คือ x จะมีค่าเป็น 2
เช่น
ถ้า x = -100 ดังนั้น -x จะมีค่าเท่ากับ 100 เป็นต้น
ตัวดำเนินการเชิงเปรียบเทียบ
ตัวดำเนินการเชิงเปรียบเทียบ
(Comparison operator) หมายถึง เครื่องหมายในการเปรียบเทียบข้อมูล
ผลลัพธ์ที่ได้จะมีค่าตรรกบูลลีนเป็น จริง (True) และ เท็จ
(False) ได้แก่
==
หมายถึง เครื่องหมายเท่ากับ
!=
หมายถึง เครื่องหมายไม่เท่ากับ
>
หมายถึง เครื่องหมายมากกว่า
>=
หมายถึง เครื่องหมายมากกว่าหรือเท่ากับ
<
หมายถึง เครื่องหมายน้อยกว่า
<=
หมายถึง เครื่องหมายน้อยกว่าหรือเท่ากับ
ตัวดำเนินการกำหนดค่า
ตัวดำเนินการกำหนดค่า
(Assignment operator) หมายถึง เครื่องหมายในการกำหนดให้ตัวแปรที่อยู่ทางฝั่งซ้าย
มีค่าเท่ากับค่าเดิมในตัวแปรนั้น "กระทำ" (บวก,
ลบ, คูณ, หาร) กับอีกตัวแปรหนึ่งที่อยู่ทางฝั่งขวา ได้แก่
x
= y หมายถึง กำหนดค่า y ให้กับตัวแปร
x
x
+= y หมายถึง เพิ่มค่า y ให้กับตัวแปร
x (x = x + y)
x
-= y หมายถึง ลบค่า y ออกจากตัวแปร
x (x = x - y)
x
*= y หมายถึง กำหนดค่า x คูณกับค่า
y ให้กับตัวแปร x (x = x * y)
x
/= y หมายถึง
กำหนดค่า x หารกับค่า y ให้กับตัวแปร x (x = x / y)
x
%= y หมายถึง กำหนดเศษที่ได้จากการหารค่า
x ด้วยค่า y ให้กับตัวแปร x (x = x % y)
x
<<= y หมายถึง
เลื่อนบิตในตัวแปร x ไปทางซ้าย y บิต (x = x << y)
x
>>= y หมายถึง เลื่อนบิตในตัวแปร
x ไปทางขวา y บิต (x = x >> y)
x
>>>= y หมายถึง
เลื่อนบิตแบบซีโรฟิลล์ในตัวแปร x ไปทางขวา y บิต (x = x >>>
y)
x
&= y หมายถึง
เก็บค่า x AND y ในตัวแปร x (x = x & y)
x
^= y หมายถึง เก็บค่า x XOR
y ในตัวแปร x (x = x ^ y)
x
|= y หมายถึง เก็บค่า x OR y
ในตัวแปร x (x = x | y)
ตัวดำเนินการเชิงตรรกะ
ตัวดำเนินการเชิงตรรกะ
(Logical operator) เป็นเครื่องหมายที่ให้ค่าจริง (True) และ
เท็จ (False) ในการเปรียบเทียบ ประกอบด้วยเครื่องหมาย
&&
หมายถึง และ(AND) จะเป็นจริงเมื่อค่าที่ใช้เปรียบเทียบทั้ง
2 ค่าเป็นจริงทั้งคู่
||
หมายถึง หรือ(OR) จะเป็นจริงเมื่อค่าที่ใช้เปรียบเทียบทั้ง
2 ค่าเป็นจริงทั้งคู่หรือจริงเพียงค่าใด ค่าหนึ่ง
!
หมายถึง ปฎิเสธ(NOT)
เป็นการแปลงค่าตรงกันข้าม จากจริงจะเป็นเท็จ และ จากเท็จจะเป็นจริ
ตัวดำเนินการเชิงข้อความ
ตัวดำเนินการเชิงข้อความ
(String operator) เป็นการเชื่อมประโยคข้อความเข้าด้วยกัน
(concatenation) โดยใช้เครื่องหมายบวก (+) เป็นตัวกระทำ
เช่น
Name = "Bodin";
Say = "Hey "+Name;
ผลลัพธ์ที่ได้ Say จะมีข้อความเป็น Hey Bodin
ตัวดำเนินการระดับบิต
ตัวดำเนินการระดับบิต
(Bitwise operator) เป็นการดำเนินการเชิงตรรกะในระดับบิต โดยจะใช้มุมมองในแบบเลขฐาน
2 มาจัดการกับข้อมูล นั่นคือ ข้อมูลตัวเลขนั้นจะถูกแปลงเป็นเลขฐานสองในหน่วยความจำในขณะที่มีการดำเนินการเชิงตรรกะในระดับบิต
ซึ่งโดยปกติแล้วการกระทำใน JavaScript จะอยู่ในระดับตัวอักษร
ที่เรียกว่า ระดับไบต์ (byte) โดยตัวดำเนินการระดับบิตมีรายละเอียดดังนี้
x
& y หมายถึง ให้ผลลัพธ์การเทียบบิตแบบ
AND ระหว่าง x กับ y
x
| y หมายถึง
ให้ผลลัพธ์การเทียบบิตแบบ OR ระหว่าง x กับ y
x
^ y หมายถึง
ให้ผลลัพธ์การเทียบบิตแบบ XOR ระหว่าง x กับ y
~x
หมายถึง เพิ่มค่าบิตให้ 1 จากนั้นจะให้ผลลัพธ์ของบิตมีค่าตรงข้าม
x
<< y หมายถึง เลื่อนบิตในตัวแปร
x ไปทางซ้าย y บิต
x
>> y หมายถึง เลื่อนบิตในตัวแปร
x ไปทางขวา y บิต
x
>>> y หมายถึง เลื่อนบิตแบบซีโรฟิลล์ในตัวแปร
x ไปทางขวา y บิต