JavaScript Operators ตัวดำเนินการในจาวาสคริปต์

ภาษาโปรแกรมทุก ๆ ภาษา ย่อมมีตัวดำเนินการ เช่น บวก ลบ คูณ หาร กำหนดค่า เปรียบเทียบค่า เป็นต้น ซึ่งถือว่าเป็นสิ่งที่ภาษาโปรแกรมจะต้องมี และภาษาจาวาสคริปต์ก็มีตัวดำเนินการให้เราใช้งานมากมาย ดังนี้ครับ

Arithmetic Operators ตัวดำเนินการด้านคณิตศาสตร์

Arithmetic Operators หรือ ตัวดำเนินการด้านคณิตศาสตร์ ใช้สำหรับดำเนินการด้านการคำนวณ เอาไว้ใช้งานกับข้อมูลชนิดตัวเลข เช่น บวก ลบ คูณ หาร เป็นต้น ซึ่งมีตัวดำเนินการต่าง ๆ ดังนี้

ตัวดำเนินการคำอธิบาย
+เครื่องหมายบวก
-เครื่องหมายลบ
*เครื่องหมายคูณ
**เครื่องหมายยกกำลัง (ES2016)
/เครื่องหมายหาร
%Modulus (หารเอาเศษ)
++เพิ่มค่าทีละ 1
--ลดค่าทีละ 1

Assignment Operators ตัวดำเนินการด้านการกำหนดค่า

Assignment Operators คือตัวดำเนินการด้านการกำหนดค่า ใช้สำหรับกำหนดค่าให้กับตัวแปร ซึ่งมีตัวดำเนินการให้ใช้งานดังนี้

ตัวดำเนินการคำอธิบายตัวอย่างการใช้งาน
=ใช้กำหนดค่าให้กับตัวแปรa = 5
+=นำค่าจากตัวแปรด้านหลังมาบวกกับตัวแปรด้านหน้าแล้วกำหนดค่าให้ตัวแปรด้านหน้าa += b
-=นำค่าจากตัวแปรด้านหน้าไปลบกับตัวแปรด้านหลังแล้วกำหนดค่าให้กับตัวแปรด้านหน้าa -= b
*=นำค่าจากตัวแปรด้านหน้าไปคูณกับตัวแปรด้านหลังแล้วกำหนดค่าให้กับตัวแปรด้านหน้าa *= b
/=นำค่าจากตัวแปรด้านหน้าไปหารกับตัวแปรด้านหลังแล้วกำหนดค่าให้กับตัวแปรด้านหน้าa /= b
%=นำค่าจากตัวแปรด้านหน้าไปหารกับตัวแปรด้านหลัง (เอาเฉพาะเศษ) แล้วกำหนดค่าให้กับตัวแปรด้านหน้าa %= b
**=นำค่าจากตัวแปรด้านหน้าไปยกกำลังกับตัวแปรด้านหลังแล้วกำหนดค่าให้กับตัวแปรด้านหน้าa **= b

String Operators ตัวดำเนินการด้านสตริง

String Operators ใช้สำหรับดำเนินการกับสตริง เราสามารถใช้ตัวดำเนินการ + หรือ += สำหรับการดำเนินการกับสตริง ซึ่งจะเป็นการต่อสตริงเข้าด้วยกัน

ตัวอย่างการใช้เครื่องหมาย + ต่อสตริง

var a = "www.";
var b = "dcrub";
var c = ".com";
d = a + b + c;
// d = "www.dcrub.com"

ตัวอย่างการใช้เครื่องหมาย += ต่อสตริง

var a = "www.";
var b = "dcrub";
var c = ".com";
a += b;
a += c;
// a = "www.dcrub.com"

ถ้าเอาตัวเลขกับสตริงมาบวกกัน จะได้ผัลลัพธ์เป็นสตริง ดังตัวอย่าง

var a = 2020;
var b = "javascript";
c = b + a;
// c = "javascript2020"

x = 2019;
y = "2020";
z = x + y;
// z = "20192020"

Comparison Operators ตัวดำเนินการด้านการเปรียบเทียบ

Comparison Operators หรือตัวดำเนินการด้านการเปรียบเทียบ ใช้สำหรับเปรียบเทียบค่าของตัวแปร มีตัวดำเนินการในกลุ่มดังนี้

ตัวดำเนินการคำอธิบาย
==เปรียบเทียบค่าของตัวแปรว่าเท่ากันหรือไม่
===เปรียบเทียบค่าของตัวแปรว่าเท่ากันหรือไม่ พร้อมทั้งเปรียบเทียบชนิดของตัวแปรว่าเป็นตัวแปรชนิดเดียวกันหรือไม่
!=เปรียบเทียบค่าของตัวแปรว่าไม่เท่ากันหรือไม่
!==เปรียบเทียบค่าของตัวแปรว่าไม่เท่ากันหรือไม่ พร้อมทั้งเปรียบเทียบชนิดของตัวแปรว่าไม่ใช่ตัวแปรชนิดเดียวกันหรือไม่
>เปรียบเทียบว่าค่าของตัวแปรด้านซ้ายมีค่ามากกว่าตัวแปรด้านขวาหรือไม่
<เปรียบเทียบว่าค่าของตัวแปรด้านซ้ายมีค่าน้อยกว่าตัวแปรด้านขวาหรือไม่
>=เปรียบเทียบว่าค่าของตัวแปรด้านซ้ายมีค่ามากกว่าหรือเท่ากับตัวแปรด้านขวาหรือไม่
<=เปรียบเทียบว่าค่าของตัวแปรด้านซ้ายมีค่าน้อยกว่าหรือเท่ากับตัวแปรด้านขวาหรือไม่
?ตัวดำเนินการ ternary

Logical Operators ตัวดำเนินการด้านตรรกะ

Logical Operators ใช้สำหรับดำเนินการด้านตรรกะ มีตัวดำเนินการในกลุ่มดังนี้

ตัวดำเนินการคำอธิบาย
&&ตรรกะ and
||ตรรกะ or
!ตรรกะ not

Type Operators ตัวดำเนินการด้านชนิดข้อมูล

Type Operators เป็นตัวดำเนินการที่ใช้สำหรับตรวจสอบชนิดข้อมูลของตัวแปร มีตัวดำเนินการดังนี้

ตัวดำเนินการคำอธิบาย
typeofคืนค่าเป็นชนิดข้อมูลของตัวแปร
instanceofคืนค่า true ในกรณีที่ object ที่ตรวจสอบ เป็น instance ของประเภทของออบเจ็กต์ที่ระบุ

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

Bitwise Operators หรือตัวดำเนินการระดับบิต มีตัวดำเนินการในกลุ่มดังนี้

ตัวดำเนินการคำอธิบายตัวอย่าง
&AND6 & 2
|OR3 | 1
~NOT4 ~ 6
^XOR7 ^ 5
<<Zero fill left shift5 << 1
>>Signed right shift5 >> 1
>>>Zero fill right shift5 >>> 1