

{"id":51929,"date":"2019-03-20T10:30:47","date_gmt":"2019-03-20T05:00:47","guid":{"rendered":"https:\/\/data-flair.training\/blogs\/?p=51929"},"modified":"2019-08-10T18:04:12","modified_gmt":"2019-08-10T12:34:12","slug":"javascript-operator","status":"publish","type":"post","link":"https:\/\/data-flair.training\/blogs\/javascript-operator\/","title":{"rendered":"JavaScript Operators &#8211; Top 7 Types that you Can&#8217;t Omit while learning JavaScript!"},"content":{"rendered":"<p>JavaScript also includes operators same as the other programming languages. An operator operates on single or multiple operands <em>(data values)<\/em> and produces a result.<em> For example, 1 + 2 adds two numeric values and produces a result (3 in this case). Here, the + sign is an operator, and 1 and 2 are operands<\/em>. JavaScript operators assign and compare values, perform arithmetic operations, etc. An operator can easily manipulate a certain value or operand. Operators perform specific mathematical and logical computations on operands. In other words, we can say that an operator operates on the operands. JavaScript operators compare values, perform arithmetic operations, etc.<\/p>\n<p>JavaScript contains both<strong> unary<\/strong> (single operand) and <strong>binary operators<\/strong> (two operands), and a<strong> ternary operator<\/strong> (conditional operator).<\/p>\n<ul>\n<li><strong>Unary operator:<\/strong><br \/>\nOperand operator or Operator operand<br \/>\n<strong>Eg.<\/strong> x++ or ++x<\/li>\n<li><strong>Binary operator:<\/strong><br \/>\nOperand operator operand<br \/>\n<strong>Eg.<\/strong> x * y<\/li>\n<\/ul>\n<p><em><strong>This JavaScript Tutorial will help you to learn the various JavaScript Operators.<\/strong><\/em><em><strong>\u00a0But before that, we would recommend you to revise <a href=\"https:\/\/data-flair.training\/blogs\/javascript-syntax\/\">JavaScript Syntax<\/a><\/strong><\/em><\/p>\n<h2>Types Of JavaScript Operators<\/h2>\n<p>There are various operators supported by JavaScript:<\/p>\n<ul>\n<li>Assignment operators<\/li>\n<li>Comparison operators<\/li>\n<li>Arithmetic operators<\/li>\n<li>Bitwise operators<\/li>\n<li>Logical operators<\/li>\n<li>Conditional (ternary) operators<\/li>\n<li>String operators<\/li>\n<\/ul>\n<h3>1. Assignment Operators<\/h3>\n<p>An assignment operator assigns a value to the left operand based on the value of its right operand with the help of <strong>equals =<\/strong> sign. Thus,<strong> x = y<\/strong> assigns the value of y into x. Various compound assignment operators are also available that work as shorthands for different operations. The following table makes the operations very clear:<\/p>\n<table class=\"table-col-padding\" dir=\"ltr\">\n<tbody>\n<tr>\n<td style=\"text-align: center\"><strong>Name<\/strong><\/td>\n<td style=\"text-align: center\"><strong>Shorthand<\/strong><\/td>\n<td style=\"text-align: center\"><strong>Meaning<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Assignment<\/td>\n<td style=\"text-align: center\">x = y<\/td>\n<td style=\"text-align: center\">x = y<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Addition Assignment<\/td>\n<td style=\"text-align: center\">x += y<\/td>\n<td style=\"text-align: center\">x = x + y<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Subtraction Assignment<\/td>\n<td style=\"text-align: center\">x -= y<\/td>\n<td style=\"text-align: center\">x = x &#8211; y<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Multiplication Assignment<\/td>\n<td style=\"text-align: center\">x *= y<\/td>\n<td style=\"text-align: center\">x = x * y<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Division Assignment<\/td>\n<td style=\"text-align: center\">x \/= y<\/td>\n<td style=\"text-align: center\">x = x \/ y<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Remainder Assignment<\/td>\n<td style=\"text-align: center\">x % = y<\/td>\n<td style=\"text-align: center\">x = x % y<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Exponentiation Assignment<\/td>\n<td style=\"text-align: center\">x **= y<\/td>\n<td style=\"text-align: center\">x = x ** y<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3>2. Comparison Operators<\/h3>\n<p>A comparison operator compares its operands and returns a boolean value (true or false) based on whether the comparison is true. The values of the operands can be <em>numeric, logical, string, or object<\/em>. If the two operands are not of a different type, JavaScript tries to convert them in the same data type for the comparison. This generally results in comparing the operands numerically. The exceptions for this method are<strong> === <\/strong>and <strong>!==<\/strong> operators, which perform strict equality and inequality comparisons.<\/p>\n<p>The following table describes the various comparison operators:<\/p>\n<table dir=\"ltr\" style=\"height: 1237px\" width=\"492\">\n<colgroup>\n<col width=\"100\" \/>\n<col width=\"100\" \/><\/colgroup>\n<tbody>\n<tr>\n<td style=\"text-align: center\"><strong>Operator<\/strong><\/td>\n<td style=\"text-align: center\"><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Equal (==)<\/td>\n<td>\n<div style=\"text-align: center\">It returns <strong>true<\/strong> if the operands are equal.<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Not equal (!=)<\/td>\n<td>\n<div style=\"text-align: center\">It returns <strong>true<\/strong> if the operands are not equal.<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Strict equal (===)<\/td>\n<td>\n<div style=\"text-align: center\">It returns <strong>true<\/strong> if the operands are equal and of the same type.<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Strict not equal (!==)<\/td>\n<td>\n<div style=\"text-align: center\">It returns <strong>true<\/strong> if the operands are of the same type but not equal, or are of different types.<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Greater than (&gt;)<\/td>\n<td>\n<div style=\"text-align: center\">It returns <strong>true<\/strong> if the left operand is greater than the right operand.<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Greater than or equal (&gt;=)<\/td>\n<td>\n<div style=\"text-align: center\">It returns <strong>true<\/strong> if the left operand is greater than or equal to the right operand.<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Less than (&gt;)<\/td>\n<td>\n<div style=\"text-align: center\">It returns true if the right operand is greater than the left operand.<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Less than or equal (&gt;=)<\/td>\n<td>\n<div style=\"text-align: center\">It returns <strong>true<\/strong> if the right operand is greater than or equal to the left operand.<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><em><strong>Did you check DataFlair&#8217;s most trending blog on <a href=\"https:\/\/data-flair.training\/blogs\/javascript-switch-case-statement\/\">JavaScript Switch Case<\/a>?<\/strong><\/em><\/p>\n<p><strong>Code:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">&lt;html&gt;\r\n&lt;body&gt;\r\n  &lt;h3&gt;DataFlair: Comparison Operators&lt;\/h3&gt;\r\n\r\n  &lt;script&gt;\r\n    document.write(\"&lt;b&gt;Equal:&lt;\/b&gt;&lt;\/br&gt;\")\r\n    var var1 = '3';\r\n    document.write(\"var1 == 3 is \" + (var1 == 3) + \", \");\r\n    document.write(\"3 == '3' is \" + (3 == '3') + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Not Equal:&lt;\/b&gt;&lt;\/br&gt;\")\r\n    document.write(\"var1 != 3 is \" + (var1 != 3) + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Strict Equal:&lt;\/b&gt;&lt;\/br&gt;\")\r\n    document.write(\"3 === '3' is \" + (3 === '3') + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Strict Not Equal:&lt;\/b&gt;&lt;\/br&gt;\")\r\n    document.write(\"3 !== '3' is \" + (3 !== '3') + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Greater than:&lt;\/b&gt;&lt;\/br&gt;\")\r\n    document.write(\"12 &gt; 3 is \" + (12 &gt; 3) + \", \");\r\n    document.write(\"12 &gt; '3' is \" + (12 &gt; '3') + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Greater than or Equal:&lt;\/b&gt;&lt;\/br&gt;\")\r\n    document.write(\"12 &gt;= 3 is \" + (12 &gt;= 3) + \", \");\r\n    document.write(\"12 &gt;= '12' is \" + (12 &gt;= '12') + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Less than:&lt;\/b&gt;&lt;\/br&gt;\")\r\n    document.write(\"3 &lt; 12 is \" + (3 &lt; 12) + \", \");\r\n    document.write(\"3 &lt; '12' is \" + (3 &lt; '12') + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Less than or Equal:&lt;\/b&gt;&lt;\/br&gt;\")\r\n    document.write(\"3 &lt;= 12 is \" + (3 &lt;= 12) + \", \");\r\n    document.write(\"12 &lt;= '12' is \" + (12 &lt;= '12') + \"&lt;\/br&gt;\");\r\n  &lt;\/script&gt;\r\n\r\n&lt;\/body&gt;\r\n&lt;\/html&gt;<\/pre>\n<p><strong>Screenshot:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-comparision-operators.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-66154\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-comparision-operators.jpg\" alt=\"JavaScript comparision operators\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-comparision-operators.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-comparision-operators-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-comparision-operators-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-comparision-operators-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-comparision-operators-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-comparision-operators-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Comparision-operators.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-66155\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Comparision-operators.jpg\" alt=\"Js Comparision operators\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Comparision-operators.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Comparision-operators-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Comparision-operators-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Comparision-operators-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Comparision-operators-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Comparision-operators-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<h3>3. Arithmetic Operators<\/h3>\n<p>An arithmetic operator takes numerical values as operands, operates on them, and returns a single numerical value.<\/p>\n<p>These operators work when used with floating-point numbers<em> (in particular, note that division by zero produces \u2018Infinity\u2019)<\/em>. For example:<\/p>\n<p>JavaScript provides the following arithmetic operators listed in the table:<\/p>\n<table dir=\"ltr\">\n<tbody>\n<tr>\n<td style=\"text-align: center\"><strong>Operator<\/strong><\/td>\n<td style=\"text-align: center\"><strong>Type<\/strong><\/td>\n<td style=\"text-align: center\"><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Addition (+)<\/td>\n<td>Binary<\/td>\n<td>It returns the value after addition.<\/td>\n<\/tr>\n<tr>\n<td>Subtraction (-)<\/td>\n<td>Binary<\/td>\n<td>It returns the value after subtraction.<\/td>\n<\/tr>\n<tr>\n<td>Multiplication (*)<\/td>\n<td>Binary<\/td>\n<td>It returns the value after multiplying the operands.<\/td>\n<\/tr>\n<tr>\n<td>Division (\/)<\/td>\n<td>Binary<\/td>\n<td>It returns the value after dividing 2 operands.<\/td>\n<\/tr>\n<tr>\n<td>Remainder (%)<\/td>\n<td>Binary<\/td>\n<td>It returns the integer remainder after dividing 2 operands.<\/td>\n<\/tr>\n<tr>\n<td>Increment (++)<\/td>\n<td>Unary<\/td>\n<td>It adds 1 to the operand. For the prefix operator (++var2), it returns the value after adding 1. For the postfix operator (var2++), it adds 1 to the value then returns it.<\/td>\n<\/tr>\n<tr>\n<td>Decrement (&#8211;)<\/td>\n<td>Unary<\/td>\n<td>It subtracts 1 from the operand. For the prefix operator (&#8211;var2), it returns the value after subtracting 1. For the postfix operator (var2&#8211;), it subtracts 1 from the value then returns it.<\/td>\n<\/tr>\n<tr>\n<td>Unary negation (-)<\/td>\n<td>Unary<\/td>\n<td>It returns the negation of the value.<\/td>\n<\/tr>\n<tr>\n<td>Unary plus (+)<\/td>\n<td>Unary<\/td>\n<td>It converts the operand to a number.<\/td>\n<\/tr>\n<tr>\n<td>Exponentiation operator (**)<\/td>\n<td>Binary<\/td>\n<td>It calculates the base to the exponent power, i.e., baseexponent.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>Code:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">&lt;html&gt;\r\n&lt;body&gt;\r\n  &lt;h3&gt;DataFlair: Arithmetic Operators&lt;\/h3&gt;\r\n\r\n  &lt;script&gt;\r\n    document.write(\"&lt;b&gt;Addition:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"12 + 3 is \" + (12 + 3) + \".&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Subtraction:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"12 - 3 is \" + (12 - 3) + \".&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Multiplication:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"12 * 3 is \" + (12 * 3) + \".&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Division:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"12 \/ 3 is \" + (12 \/ 3) + \".&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Remainder:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"12 % 3 is \" + (12 % 3) + \".&lt;\/br&gt;\");\r\n\r\n    var var2 = 4;\r\n    document.write(\"Value of var2 is \" + var2 + \".&lt;\/br&gt;\");\r\n    document.write(\"&lt;b&gt;Increment:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"var2++ is \" + (var2++) + \". \");\r\n    document.write(\"Value of var2 is \" + var2 + \".&lt;\/br&gt;\");\r\n    document.write(\"++var2 is \" + (++var2) + \". \");\r\n    document.write(\"Value of var2 is \" + var2 + \".&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Decrement:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"var2-- is \" + (var2--) + \". \");\r\n    document.write(\"Value of var2 is \" + var2 + \".&lt;\/br&gt;\");\r\n    document.write(\"--var2 is \" + (--var2) + \". \");\r\n    document.write(\"Value of var2 is \" + var2 + \".&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Unary negation:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"-var2 is \" + (-var2) + \".&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Unary plus:&lt;\/b&gt;&lt;\/br&gt;\");\r\ndocument.write(\"+var2 is \" + (+var2) + \".&lt;\/br&gt;\");\r\ndocument.write(\"+true is \" + (+true) + \".&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Exponentiation operator:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"3 ** 3 is \" + (3 ** 3) + \".&lt;\/br&gt;\");\r\n  &lt;\/script&gt;\r\n\r\n&lt;\/body&gt;\r\n&lt;\/html&gt;<\/pre>\n<p><strong>Screenshot:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Arithmetic-Operators.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-66156\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Arithmetic-Operators.jpg\" alt=\"JavaScript Arithmetic Operators\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Arithmetic-Operators.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Arithmetic-Operators-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Arithmetic-Operators-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Arithmetic-Operators-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Arithmetic-Operators-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Arithmetic-Operators-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Arithmetic-Operators-op.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-66157\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Arithmetic-Operators-op.jpg\" alt=\"Js Arithmetic Operators op\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Arithmetic-Operators-op.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Arithmetic-Operators-op-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Arithmetic-Operators-op-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Arithmetic-Operators-op-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Arithmetic-Operators-op-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Arithmetic-Operators-op-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<p><em><strong>Hold On! Did you check our latest blog on <a href=\"https:\/\/data-flair.training\/blogs\/javascript-frameworks\/\">JavaScript Frameworks<\/a>?<\/strong><\/em><\/p>\n<h3>4. Bitwise Operators<\/h3>\n<p>A bitwise operator treats their operands as a set of 32<em> (zeros and ones)<\/em>. It converts the numerical value to its binary representation, performs the necessary operation, and then returns the standard JavaScript numerical values. JavaScript discards the most significant bits for numbers with more than <strong>32 bits.<\/strong><\/p>\n<p>The following table summarizes JavaScript&#8217;s bitwise operators.<\/p>\n<table>\n<tbody>\n<tr>\n<td style=\"text-align: center\"><strong>Operator<\/strong><\/td>\n<td style=\"text-align: center\"><strong>Usage<\/strong><\/td>\n<td style=\"text-align: center\"><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Bitwise AND<\/td>\n<td>x &amp; y<\/td>\n<td>It returns &lt;remove it from all the description&gt;1 in each bit position for which the corresponding bits of both operands are ones.<\/td>\n<\/tr>\n<tr>\n<td>Bitwise OR<\/td>\n<td>x | y<\/td>\n<td>It returns 0 in each bit position for which the corresponding bits of both operands are zeros.<\/td>\n<\/tr>\n<tr>\n<td>Bitwise XOR<\/td>\n<td>x ^ y<\/td>\n<td>It returns 0 in each bit position for which the corresponding bits are the same and 1 in each bit position for which the corresponding bits are different.<\/td>\n<\/tr>\n<tr>\n<td>Bitwise NOT<\/td>\n<td>~ x<\/td>\n<td>It inverts the bits of the operand.<\/td>\n<\/tr>\n<tr>\n<td>Left Shift<\/td>\n<td>x &lt;&lt; y<\/td>\n<td>It shifts x in binary representation y bits to the left, shifting in zeros from the right.<\/td>\n<\/tr>\n<tr>\n<td>Sign-propagating right shift<\/td>\n<td>x &gt;&gt; y<\/td>\n<td>It shifts x in binary representation y bits to the right, discarding bits shifted off.<\/td>\n<\/tr>\n<tr>\n<td>Zero-fill right shift<\/td>\n<td>x &gt;&gt;&gt; y<\/td>\n<td>It shifts x in binary representation y bits to the right, discarding bits shifted off, and shifting in zeros from the left.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Let\u2019s understand the functioning of all the bitwise operators from the code.<\/p>\n<ul>\n<li>\n<h4>Bitwise Logical Operators (AND, OR, XOR, NOT)<\/h4>\n<\/li>\n<\/ul>\n<p>The binary representation of 4 and 5 are 100 and 101 respectively.<br \/>\nBitwise AND of 4 and 5 is 4. Checking the corresponding bits,<br \/>\n1 &amp; 1 (1)\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a00 &amp; 0(0)\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 0 &amp; 1(0)<\/p>\n<p>Thus, <strong>100 &amp; 101 = 100<\/strong>, which is the binary representation of 4. So, <strong>4 &amp; 5 = 4.<\/strong><\/p>\n<p>Bitwise OR and XOR follows the same method.<br \/>\nFor Bitwise NOT of 4,<br \/>\n<strong>~00000&#8230;00100 = 11111&#8230;11011<\/strong>, which is the binary representation of -5. Thus<strong> ~4 = -5.<\/strong><\/p>\n<p>Remember, if the most significant bit in the binary representation of a number is 0, the number is positive. The most significant bit for a negative number is 1.<\/p>\n<ul>\n<li>\n<h4>Bitwise Shift Operators<\/h4>\n<\/li>\n<\/ul>\n<p>The bitwise shift operators take two operands: the first specifies the number of values to be shifted, and the second indicates the number of bit positions by which the first operand is to be shifted. The operator used controls the direction we perform the shift operation in.<\/p>\n<p>These operators convert their operands to thirty-two-bit integers and return a result of the same type as the left operand.<\/p>\n<p>Result of Left shift (4 &lt;&lt; 5) is 128. We shift the bits of 100 to the left by 5 bits and add five zeroes on the right.<br \/>\n<strong>0000&#8230;0000100 &lt;&lt; 5 = 0000&#8230;0010000000<\/strong>, which is the binary representation of 128. Thus, <strong>4 &lt;&lt; 5 = 128.<\/strong><br \/>\n<em>(The binary representations for 9 and 19 are 1001 and 10011 respectively.)<\/em><\/p>\n<p><strong>9 &gt;&gt; 2 = 2<\/strong> (Sign-propagating right shift), because 1001 shifted 2 bits to the right becomes 10, which is 2. The sign is preserved with this operator. Therefore, <strong>9 &gt;&gt; 2<\/strong> (2) and<strong> -9 &gt;&gt; 2<\/strong> (-3) are not the same.<\/p>\n<p><strong>20 &gt;&gt;&gt; 2 = 5<\/strong> (Zero-fill right shift), because 10100 shifted 2 bits to the right becomes 101, which is 5.<br \/>\nZero-fill right shift and sign-propagating right shift produce the same result for non-negative numbers.<\/p>\n<p><strong>Code:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">&lt;html&gt;\r\n&lt;body&gt;\r\n  &lt;h3&gt;DataFlair: Bitwise Operators&lt;\/h3&gt;\r\n\r\n  &lt;script&gt;\r\n    var var5 = 4;\r\n    var var6 = 5;\r\n    document.write(\"Value of var5 is \" + var5 + \" and var6 is\" + var6 + \".&lt;\/br&gt;\");\r\n    document.write(\"&lt;b&gt;Bitwise AND:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"var5 AND var6 is \" + (var5 &amp; var6) + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Bitwise OR:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"var5 OR var6 is \" + (var5 | var6) + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Bitwise XOR:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"var5 XOR var6 is \" + (var5 ^ var6) + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Bitwise NOT:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"NOT var5 is \" + (~var5) + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Left Shift:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"var5 &lt;&lt; var6 is \" + (var5 &lt;&lt; var6) + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Sign-propagating right shift:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"9 &gt;&gt; 2 is \" + (9 &gt;&gt; 2) + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Zero-fill right shift:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"19 &gt;&gt;&gt; 2 is \" + (19 &gt;&gt;&gt; 2) + \"&lt;\/br&gt;\");\r\n  &lt;\/script&gt;\r\n\r\n&lt;\/body&gt;\r\n&lt;\/html&gt;<\/pre>\n<p><strong>Screenshot:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-bitwise-operators.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-66158\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-bitwise-operators.jpg\" alt=\"JavaScript bitwise operators\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-bitwise-operators.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-bitwise-operators-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-bitwise-operators-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-bitwise-operators-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-bitwise-operators-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-bitwise-operators-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Bitwise-operators-op.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-66159\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Bitwise-operators-op.jpg\" alt=\"Js Bitwise operators op\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Bitwise-operators-op.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Bitwise-operators-op-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Bitwise-operators-op-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Bitwise-operators-op-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Bitwise-operators-op-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-Bitwise-operators-op-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<h3>5. Logical Operators<\/h3>\n<p>These operators are (typically) used with <a href=\"https:\/\/en.wikipedia.org\/wiki\/Boolean_data_type\">Boolean<\/a>\/ logical values and return a Boolean value. However, if the &amp;&amp; and || operators are used with non-Boolean values, they may return a non-Boolean value. This is because they actually return the value of one of the specified operands. All the values, excluding false and 0, are considered to be true.<\/p>\n<p>The logical operators are described in the following table:<\/p>\n<table dir=\"ltr\" style=\"height: 905px\" width=\"553\">\n<colgroup>\n<col width=\"100\" \/>\n<col width=\"100\" \/>\n<col width=\"100\" \/><\/colgroup>\n<tbody>\n<tr>\n<td style=\"text-align: center\"><strong>Operator<\/strong><\/td>\n<td style=\"text-align: center\"><strong>Usage<\/strong><\/td>\n<td style=\"text-align: center\"><strong>Description<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Logical AND<\/td>\n<td>exp1 &amp;&amp; exp2<\/td>\n<td>It returns <strong>exp1<\/strong> if it can be converted to false; otherwise, it returns<strong> exp2.<\/strong> With Boolean values, &amp;&amp; returns <strong>true<\/strong> if both the operands are true; else it returns<strong> false<\/strong>.<\/td>\n<\/tr>\n<tr>\n<td>Logical OR<\/td>\n<td>exp1 || exp2<\/td>\n<td>It returns <strong>exp1<\/strong> if it can be converted to true; otherwise, it returns <strong>exp2<\/strong>. With Boolean values, || returns <strong>true<\/strong> if either operand is true; if both are false, it returns <strong>false.<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Logical NOT<\/td>\n<td>!exp<\/td>\n<td>It returns <strong>false<\/strong> if its single operand that can be converted to true; otherwise, returns <strong>true.<\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><em><strong>Don&#8217;t forget to explore our easy to learn article on <a href=\"https:\/\/data-flair.training\/blogs\/javascript-data-types\/\">JavaScript Data Types<\/a>.<\/strong><\/em><\/p>\n<p><strong>Code:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">&lt;html&gt;\r\n&lt;body&gt;\r\n\r\n  &lt;script&gt;\r\n    document.write(\"&lt;b&gt;Logical AND:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"DataFlair AND 1 is \" + (\"DataFlair\" &amp;&amp; 1) + \"&lt;\/br&gt;\");\r\n    document.write(\"false AND true is \" + (false &amp;&amp; true) + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Logical OR:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"var7 OR var8 is \" + (\"DataFlair\" || 0) + \"&lt;\/br&gt;\");\r\n    document.write(\"false OR false is \" + (false || false) + \"&lt;\/br&gt;\");\r\n\r\n    document.write(\"&lt;b&gt;Logical NOT:&lt;\/b&gt;&lt;\/br&gt;\");\r\n    document.write(\"!1 is \" + (!1) + \"&lt;\/br&gt;\");\r\n    document.write(\"!false is \" + (!false) + \"&lt;\/br&gt;\");\r\n  &lt;\/script&gt;\r\n\r\n&lt;\/body&gt;\r\n&lt;\/html&gt;<\/pre>\n<p><strong>Screenshot:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Logical-Operators.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-66160\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Logical-Operators.jpg\" alt=\"JavaScript Logical Operators\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Logical-Operators.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Logical-Operators-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Logical-Operators-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Logical-Operators-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Logical-Operators-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-Logical-Operators-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-logical-Operator-op.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-66161\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-logical-Operator-op.jpg\" alt=\"Js logical Operator op\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-logical-Operator-op.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-logical-Operator-op-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-logical-Operator-op-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-logical-Operator-op-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-logical-Operator-op-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-logical-Operator-op-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<h3>6. Conditional (Ternary) Operator<\/h3>\n<p>This is the only JavaScript operator that takes 3 operands. It assigns one of the two values to a variable based on some condition.<\/p>\n<p>The syntax for this operator is:<br \/>\n<strong>condition? val1: val2;<\/strong><\/p>\n<p>If the condition is true, this operator returns val1; else it returns val2. Programmers sometimes use this operator as an alternative to if&#8230;else statements. You will learn about this, along with other conditional statements in <em><strong>DataFlair\u2019s <a href=\"https:\/\/data-flair.training\/blogs\/javascript-conditional-statements\/\">tutorial on JavaScript conditional statements<\/a>.<\/strong><\/em><\/p>\n<h3>7. String Operator<\/h3>\n<p>Sometimes you need to join two or more strings together in JavaScript. Technically, joining two strings is known as string concatenation. We use the concatenation operator <strong>(+)<\/strong> for this purpose. This operator concatenates two or more strings together and returns a single string which is the union of all the operand strings. Remember, you need at least one of the operands as strings otherwise + will act as an Arithmetic Operator. We have been using this operator in every code to print output in the browser. Let\u2019s use this operator to join two strings together with the help of a program.<\/p>\n<p><strong>Code:<\/strong><\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"null\">&lt;html&gt;\r\n  &lt;body&gt;\r\n\r\n    &lt;script&gt;\r\n      var str1 = \"Hello\", str2 = \"DataFlair\";\r\n      var num = 4;\r\n      document.write(str1 + \" \" + str2 + \"!&lt;\/br&gt;\"); \/\/concatenation of two strings\r\n      document.write(str1 + \" User: \" + num + \"!\"); \/\/concatenation of a string and a number\r\n    &lt;\/script&gt;\r\n\r\n  &lt;\/body&gt;\r\n&lt;\/html&gt;\r\n\r\n<\/pre>\n<p><strong>Screenshot:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-String-operators.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-66163\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-String-operators.jpg\" alt=\"JavaScript String operators\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-String-operators.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-String-operators-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-String-operators-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-String-operators-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-String-operators-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/JavaScript-String-operators-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-String-Operator-Op.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-66164\" src=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-String-Operator-Op.jpg\" alt=\"Js String Operator Op\" width=\"1299\" height=\"741\" srcset=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-String-Operator-Op.jpg 1299w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-String-Operator-Op-150x86.jpg 150w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-String-Operator-Op-300x171.jpg 300w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-String-Operator-Op-768x438.jpg 768w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-String-Operator-Op-1024x584.jpg 1024w, https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/08\/Js-String-Operator-Op-520x297.jpg 520w\" sizes=\"auto, (max-width: 1299px) 100vw, 1299px\" \/><\/a><\/p>\n<h3>Operator Precedence<\/h3>\n<p>The precedence of operators determines the order in which we apply them when evaluating an expression. By using <strong>parentheses ( )<\/strong>, you can override operator precedence.<\/p>\n<p>The table below shows the precedence of operators, from highest to lowest:<\/p>\n<table dir=\"ltr\" style=\"height: 515px\" width=\"402\">\n<colgroup>\n<col width=\"100\" \/>\n<col width=\"100\" \/><\/colgroup>\n<tbody>\n<tr>\n<td style=\"text-align: center\"><strong>Operator type<\/strong><\/td>\n<td>\n<div style=\"text-align: center\"><strong>Individual operators<\/strong><\/div>\n<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Negation\/ Increment<\/td>\n<td style=\"text-align: center\">! ~ &#8211; + ++ &#8212;<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Multiply\/ Divide<\/td>\n<td style=\"text-align: center\">* \/ %<\/td>\n<\/tr>\n<tr>\n<td>\n<div style=\"text-align: center\">Addition\/ Subtraction<\/div>\n<\/td>\n<td style=\"text-align: center\">+\/-<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Bitwise shift<\/td>\n<td style=\"text-align: center\">&lt;&lt; &gt;&gt; &gt;&gt;&gt;<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Relational<\/td>\n<td style=\"text-align: center\">&lt; &lt;= &gt; &gt;=<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Equality<\/td>\n<td style=\"text-align: center\">==!= ===!==<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Bitwise AND<\/td>\n<td style=\"text-align: center\">&amp;<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Bitwise XOR<\/td>\n<td style=\"text-align: center\">^<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Bitwise OR<\/td>\n<td style=\"text-align: center\">|<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Logical AND<\/td>\n<td style=\"text-align: center\">&amp;&amp;<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Logical OR<\/td>\n<td style=\"text-align: center\">||<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Conditional<\/td>\n<td style=\"text-align: center\">?:<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center\">Assignment<\/td>\n<td style=\"text-align: center\">=+=-=*=\/=%=&lt;&lt;=&gt;&gt;=&gt;&gt;&gt;=&amp;=^=|=<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Summary<\/h2>\n<p>Here we come to the end of our tutorial on JavaScript Operators. In this article, we learned about the different types of operators that JavaScript provides. We also understood the operator precedence for them. These are very essential to understand if you want to continue programming in JavaScript. Make sure you have a basic understanding of all these operators before you continue with the next tutorial on<em><strong> <a href=\"https:\/\/data-flair.training\/blogs\/loop-in-javascript\/\">JavaScript Loops.<\/a><\/strong><\/em><\/p>\n<p>Did you enjoy this article? Share your experience with us through comments.<span hidden class=\"__iawmlf-post-loop-links\" data-iawmlf-links=\"[{&quot;id&quot;:1461,&quot;href&quot;:&quot;https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/Boolean_data_type&quot;,&quot;archived_href&quot;:&quot;http:\\\/\\\/web-wp.archive.org\\\/web\\\/20251006132412\\\/https:\\\/\\\/en.wikipedia.org\\\/wiki\\\/Boolean_data_type&quot;,&quot;redirect_href&quot;:&quot;&quot;,&quot;checks&quot;:[{&quot;date&quot;:&quot;2025-12-09 07:35:30&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-14 09:59:48&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2025-12-23 02:34:22&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-12 06:37:28&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-19 00:59:37&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-01-28 14:25:27&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-04 10:51:54&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-10 16:19:34&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-15 15:31:12&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-19 12:46:51&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-02-28 09:33:47&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-07 07:04:31&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-25 10:34:50&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-03-29 13:15:05&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-19 03:57:39&quot;,&quot;http_code&quot;:429},{&quot;date&quot;:&quot;2026-04-24 06:10:33&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-04-27 13:17:04&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-01 01:36:12&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-05 16:20:19&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-11 13:08:06&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-15 13:06:39&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-19 05:45:22&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-05-26 00:22:45&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-12 03:55:16&quot;,&quot;http_code&quot;:200},{&quot;date&quot;:&quot;2026-06-15 05:12:39&quot;,&quot;http_code&quot;:200}],&quot;broken&quot;:false,&quot;last_checked&quot;:{&quot;date&quot;:&quot;2026-06-15 05:12:39&quot;,&quot;http_code&quot;:200},&quot;process&quot;:&quot;done&quot;}]\"><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>JavaScript also includes operators same as the other programming languages. An operator operates on single or multiple operands (data values) and produces a result. For example, 1 + 2 adds two numeric values and&#46;&#46;&#46;<\/p>\n","protected":false},"author":5,"featured_media":66562,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18979],"tags":[1106,1193,2011,19233,19298,19234,19237,11500,19235,19236],"class_list":["post-51929","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript","tag-arithmetic-operators","tag-assignment-operators","tag-bitwise-operators","tag-comparison-operators","tag-javascript-operators","tag-logical-operators","tag-miscellaneous-operators","tag-relational-operators","tag-string-operators","tag-unary-operators"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>JavaScript Operators - Top 7 Types that you Can&#039;t Omit while learning JavaScript! - DataFlair<\/title>\n<meta name=\"description\" content=\"Learn Different types of JavaScript Operators with examples: Arithmetic, Comparison, Logical, Bitwise, Assignment, Unary, String, Miscellaneous Operators\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/data-flair.training\/blogs\/javascript-operator\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JavaScript Operators - Top 7 Types that you Can&#039;t Omit while learning JavaScript! - DataFlair\" \/>\n<meta property=\"og:description\" content=\"Learn Different types of JavaScript Operators with examples: Arithmetic, Comparison, Logical, Bitwise, Assignment, Unary, String, Miscellaneous Operators\" \/>\n<meta property=\"og:url\" content=\"https:\/\/data-flair.training\/blogs\/javascript-operator\/\" \/>\n<meta property=\"og:site_name\" content=\"DataFlair\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/DataFlairWS\/\" \/>\n<meta property=\"article:published_time\" content=\"2019-03-20T05:00:47+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-08-10T12:34:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/03\/JavaScript-Operators.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"420\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"DataFlair Team\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:site\" content=\"@DataFlairWS\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"DataFlair Team\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"13 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JavaScript Operators - Top 7 Types that you Can't Omit while learning JavaScript! - DataFlair","description":"Learn Different types of JavaScript Operators with examples: Arithmetic, Comparison, Logical, Bitwise, Assignment, Unary, String, Miscellaneous Operators","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/data-flair.training\/blogs\/javascript-operator\/","og_locale":"en_US","og_type":"article","og_title":"JavaScript Operators - Top 7 Types that you Can't Omit while learning JavaScript! - DataFlair","og_description":"Learn Different types of JavaScript Operators with examples: Arithmetic, Comparison, Logical, Bitwise, Assignment, Unary, String, Miscellaneous Operators","og_url":"https:\/\/data-flair.training\/blogs\/javascript-operator\/","og_site_name":"DataFlair","article_publisher":"https:\/\/www.facebook.com\/DataFlairWS\/","article_published_time":"2019-03-20T05:00:47+00:00","article_modified_time":"2019-08-10T12:34:12+00:00","og_image":[{"width":800,"height":420,"url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/03\/JavaScript-Operators.jpg","type":"image\/jpeg"}],"author":"DataFlair Team","twitter_card":"summary_large_image","twitter_creator":"@DataFlairWS","twitter_site":"@DataFlairWS","twitter_misc":{"Written by":"DataFlair Team","Est. reading time":"13 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/data-flair.training\/blogs\/javascript-operator\/#article","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/javascript-operator\/"},"author":{"name":"DataFlair Team","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/7f83c342f5d1632d6f7b4b0b0f447823"},"headline":"JavaScript Operators &#8211; Top 7 Types that you Can&#8217;t Omit while learning JavaScript!","datePublished":"2019-03-20T05:00:47+00:00","dateModified":"2019-08-10T12:34:12+00:00","mainEntityOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/javascript-operator\/"},"wordCount":1785,"commentCount":0,"publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/javascript-operator\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/03\/JavaScript-Operators.jpg","keywords":["Arithmetic Operators","Assignment Operators","Bitwise Operators","Comparison Operators","Javascript operators","Logical Operators","Miscellaneous\u00a0Operators","Relational Operators","String Operators","Unary Operators"],"articleSection":["JavaScript Tutorial"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/data-flair.training\/blogs\/javascript-operator\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/data-flair.training\/blogs\/javascript-operator\/","url":"https:\/\/data-flair.training\/blogs\/javascript-operator\/","name":"JavaScript Operators - Top 7 Types that you Can't Omit while learning JavaScript! - DataFlair","isPartOf":{"@id":"https:\/\/data-flair.training\/blogs\/#website"},"primaryImageOfPage":{"@id":"https:\/\/data-flair.training\/blogs\/javascript-operator\/#primaryimage"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/javascript-operator\/#primaryimage"},"thumbnailUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/03\/JavaScript-Operators.jpg","datePublished":"2019-03-20T05:00:47+00:00","dateModified":"2019-08-10T12:34:12+00:00","description":"Learn Different types of JavaScript Operators with examples: Arithmetic, Comparison, Logical, Bitwise, Assignment, Unary, String, Miscellaneous Operators","breadcrumb":{"@id":"https:\/\/data-flair.training\/blogs\/javascript-operator\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/data-flair.training\/blogs\/javascript-operator\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/javascript-operator\/#primaryimage","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/03\/JavaScript-Operators.jpg","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2019\/03\/JavaScript-Operators.jpg","width":800,"height":420,"caption":"JavaScript-Operators"},{"@type":"BreadcrumbList","@id":"https:\/\/data-flair.training\/blogs\/javascript-operator\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog Home","item":"https:\/\/data-flair.training\/blogs\/"},{"@type":"ListItem","position":2,"name":"JavaScript Tutorial","item":"https:\/\/data-flair.training\/blogs\/category\/javascript\/"},{"@type":"ListItem","position":3,"name":"JavaScript Operators &#8211; Top 7 Types that you Can&#8217;t Omit while learning JavaScript!"}]},{"@type":"WebSite","@id":"https:\/\/data-flair.training\/blogs\/#website","url":"https:\/\/data-flair.training\/blogs\/","name":"DataFlair","description":"Learn Today. Lead Tomorrow.","publisher":{"@id":"https:\/\/data-flair.training\/blogs\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/data-flair.training\/blogs\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/data-flair.training\/blogs\/#organization","name":"DataFlair","url":"https:\/\/data-flair.training\/blogs\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/","url":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","contentUrl":"https:\/\/data-flair.training\/blogs\/wp-content\/uploads\/sites\/2\/2016\/07\/Data-Flair.png","width":106,"height":48,"caption":"DataFlair"},"image":{"@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/DataFlairWS\/","https:\/\/x.com\/DataFlairWS","https:\/\/www.linkedin.com\/company\/dataflair-web-services-pvt-ltd\/","https:\/\/www.youtube.com\/user\/DataFlairWS"]},{"@type":"Person","@id":"https:\/\/data-flair.training\/blogs\/#\/schema\/person\/7f83c342f5d1632d6f7b4b0b0f447823","name":"DataFlair Team","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/4cf3a74600d131330b8c481d519afd1574093ed89f6d3396a95393ad223eb7cd?s=96&d=mm&r=g","caption":"DataFlair Team"},"description":"DataFlair Team creates expert-level guides on programming, Java, Python, C++, DSA, AI, ML, data Science, Android, Flutter, MERN, Web Development, and technology. Our goal is to empower learners with easy-to-understand content. Explore our resources for career growth and practical learning.","url":"https:\/\/data-flair.training\/blogs\/author\/dfteam1\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/51929","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/comments?post=51929"}],"version-history":[{"count":12,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/51929\/revisions"}],"predecessor-version":[{"id":67678,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/posts\/51929\/revisions\/67678"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media\/66562"}],"wp:attachment":[{"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/media?parent=51929"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/categories?post=51929"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/data-flair.training\/blogs\/wp-json\/wp\/v2\/tags?post=51929"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}