JavaScript Assignment

ஒதுக்கீட்டு ஆபரேட்டர்களைக் கற்றுக்கொள்ளுங்கள்

JavaScript Assignment Operators

ஒதுக்கீட்டு ஆபரேட்டர்கள் JavaScript மாறிகளுக்கு மதிப்புகளை ஒதுக்குகின்றன.

x = 10 மற்றும் y = 5 என்று கொடுக்கப்பட்டால், கீழே உள்ள அட்டவணை ஒதுக்கீட்டு ஆபரேட்டர்களை விளக்குகிறது:

Assignment Operators

Operator Example Same As Result (x=10, y=5)
= x = y x = y x = 5
+= x += y x = x + y x = 15
-= x -= y x = x - y x = 5
*= x *= y x = x * y x = 50
**= x **= y x = x ** y x = 100000 (10⁵)
/= x /= y x = x / y x = 2
%= x %= y x = x % y x = 0

Logical Assignment Operators

Operator Example Result Description
&&= true &&= 10 x = 10 முதல் மதிப்பு true எனில் இரண்டாவது மதிப்பை ஒதுக்குகிறது
||= false ||= 10 x = 10 முதல் மதிப்பு false எனில் இரண்டாவது மதிப்பை ஒதுக்குகிறது
??= null ??= 10 x = 10 முதல் மதிப்பு undefined அல்லது null எனில் இரண்டாவது மதிப்பை ஒதுக்குகிறது

ES2020 அம்சங்கள்:

&&=, ||=, மற்றும் ??= ஆபரேட்டர்கள் ES2020 இல் அறிமுகப்படுத்தப்பட்டன. இவை நவீன JavaScript இல் பயன்படுத்தப்படுகின்றன.

The = Operator

எளிய ஒதுக்கீட்டு ஆபரேட்டர் ஒரு மாறிக்கு எளிய மதிப்பை ஒதுக்குகிறது.

Simple Assignment Examples

let x = 10;
let y = 10 + 5;  // y = 15

The += Operator

கூட்டல் ஒதுக்கீட்டு ஆபரேட்டர் ஒரு மாறிக்கு ஒரு மதிப்பைச் சேர்க்கிறது.

Addition Assignment Examples

let x = 10;
x += 5;  // x = 15

let y = 20;
y += 3;  // y = 23

The -= Operator

கழித்தல் ஒதுக்கீட்டு ஆபரேட்டர் ஒரு மாறியிலிருந்து ஒரு மதிப்பைக் கழிக்கிறது.

Subtraction Assignment Example

let x = 10;
x -= 5;  // x = 5

The *= Operator

பெருக்கல் ஒதுக்கீட்டு ஆபரேட்டர் ஒரு மாறியைப் பெருக்குகிறது.

Multiplication Assignment Example

let x = 10;
x *= 5;  // x = 50

The **= Operator

அடுக்குக்குறி ஒதுக்கீட்டு ஆபரேட்டர் ஒரு மாறியை operand இன் அடுக்குக்கு உயர்த்துகிறது.

Exponentiation Assignment Example

let x = 10;
x **= 5;  // x = 100000 (10⁵)

The /= Operator

வகுத்தல் ஒதுக்கீட்டு ஆபரேட்டர் ஒரு மாறியை வகுக்கிறது.

Division Assignment Example

let x = 10;
x /= 5;  // x = 2

The %= Operator

மீதி ஒதுக்கீட்டு ஆபரேட்டர் ஒரு மாறிக்கு மீதியை ஒதுக்குகிறது.

Remainder Assignment Example

let x = 10;
x %= 5;  // x = 0 (10 ÷ 5 = 2, remainder 0)

String Assignment

இரண்டு ஒதுக்கீட்டு ஆபரேட்டர்கள் சரங்களுக்கு மதிப்புகளை ஒதுக்கலாம்:

எளிய ஒதுக்கீட்டு ஆபரேட்டர் ஒரு சரத்திற்கு எளிய மதிப்பை ஒதுக்குகிறது.

கூட்டல் ஒதுக்கீட்டு ஆபரேட்டர் ஒரு சரத்திற்கு மதிப்பைச் சேர்க்கிறது.

The = Operator for Strings

let text = "Hello";
let greeting = "Hi";

The += Operator for Strings (Concatenation)

let text = "Hello";
text += " World";  // text = "Hello World"

The &&= Operator

தருக்க AND ஒதுக்கீட்டு ஆபரேட்டர் இரண்டு மதிப்புகளுக்கு இடையில் பயன்படுத்தப்படுகிறது.

முதல் மதிப்பு true எனில், இரண்டாவது மதிப்பு ஒதுக்கப்படுகிறது.

Logical AND Assignment Examples

let x = true;
let y = x &&= 10;  // y = 10

let x = false;
let y = x &&= 10;  // y = false

let x = 1;         // truthy
let y = x &&= 10;  // y = 10

let x = 0;         // falsy
let y = x &&= 10;  // y = 0

let x = undefined;
let y = x &&= 10;  // y = undefined

let x = null;
let y = x &&= 10;  // y = null

📅 குறிப்பு:

&&= ஆபரேட்டர் ஒரு ES2020 அம்சம்.

The ||= Operator

தருக்க OR ஒதுக்கீட்டு ஆபரேட்டர் இரண்டு மதிப்புகளுக்கு இடையில் பயன்படுத்தப்படுகிறது.

முதல் மதிப்பு false எனில், இரண்டாவது மதிப்பு ஒதுக்கப்படுகிறது.

Logical OR Assignment Examples

let x = false;
let y = x ||= 10;  // y = 10

let x = true;
let y = x ||= 10;  // y = true

let x = null;      // falsy
let y = x ||= 10;  // y = 10

let x = undefined; // falsy
let y = x ||= 10;  // y = 10

let x = 0;         // falsy
let y = x ||= 10;  // y = 10

let x = "";        // falsy (empty string)
let y = x ||= 10;  // y = 10

📅 குறிப்பு:

||= ஆபரேட்டர் ஒரு ES2020 அம்சம்.

The ??= Operator

Nullish coalescing ஒதுக்கீட்டு ஆபரேட்டர் இரண்டு மதிப்புகளுக்கு இடையில் பயன்படுத்தப்படுகிறது.

முதல் மதிப்பு undefined அல்லது null எனில், இரண்டாவது மதிப்பு ஒதுக்கப்படுகிறது.

Nullish Coalescing Assignment Examples

let x;
x ??= 10;          // x = 10 (undefined)

let x = 0;
x ??= 10;          // x = 0 (not nullish)

let x = null;
x ??= 10;          // x = 10 (null)

let x = undefined;
x ??= 10;          // x = 10 (undefined)

let x = false;
x ??= 10;          // x = false (not nullish)

let x = "";
x ??= 10;          // x = "" (not nullish)

📅 குறிப்பு:

??= ஆபரேட்டர் ஒரு ES2020 அம்சம்.

The Spread (...) Operator

... ஆபரேட்டர் iterables ஐ தனிப்பட்ட கூறுகளாகப் பிரிக்கிறது.

Example: Spread Operator

let text = "12345";

let min = Math.min(...text);  // min = 1
let max = Math.max(...text);  // max = 5

🔍 Spread Operator பயன்பாடு:

Spread ஆபரேட்டர் வரிசைகள், சரங்கள் மற்றும் பொருள்களுடன் பயன்படுத்தப்படுகிறது. இது கூறுகளைப் பிரிக்க அல்லது நகலெடுக்க உதவுகிறது.

||= vs ??= Comparison

Value ||= Result ??= Result Explanation
undefined Assigns new value Assigns new value Both treat undefined as falsy/nullish
null Assigns new value Assigns new value Both treat null as falsy/nullish
0 Assigns new value Keeps 0 ||= treats 0 as falsy, ??= treats as valid
false Assigns new value Keeps false ||= treats false as falsy, ??= treats as valid
"" (empty string) Assigns new value Keeps "" ||= treats "" as falsy, ??= treats as valid
true Keeps true Keeps true Both treat true as truthy/non-nullish

Exercise

பின்வரும் குறியீட்டைக் கவனியுங்கள்:

let x = 5;
x += 10;

x இன் முடிவு என்னவாக இருக்கும்?

5
✗ தவறு! x += 10 என்பது x = x + 10 என்பதற்கு சமம். ஆரம்ப மதிப்பு 5, 10 சேர்த்தால் 15 கிடைக்கும், 5 இல்லை
10
✗ தவறு! += ஆபரேட்டர் மதிப்பை மாற்றுகிறது, அதை மாற்றாது. x = 10 தான் 10 தரும், ஆனால் x += 10 அதன் தற்போதைய மதிப்புடன் 10 ஐ சேர்க்கிறது
15
✓ சரி! x += 10 என்பது x = x + 10 என்பதற்கு சமம். ஆரம்பத்தில் x = 5, எனவே 5 + 10 = 15
50
✗ தவறு! 50 கிடைக்க x *= 10 அல்லது x = 50 போன்றது தேவை. += என்பது கூட்டல் ஆபரேட்டர், பெருக்கல் அல்ல