diff --git a/1-js/02-first-steps/09-comparison/1-comparison-questions/solution.md b/1-js/02-first-steps/09-comparison/1-comparison-questions/solution.md
index 32fc5a965..674af1167 100644
--- a/1-js/02-first-steps/09-comparison/1-comparison-questions/solution.md
+++ b/1-js/02-first-steps/09-comparison/1-comparison-questions/solution.md
@@ -15,7 +15,7 @@ null === +"\n0\n" → false
1. true، نیاز به توضیح نداره.
2. false، بر اساس مقایسه لغت نامه ای که `"a"` کوچک تر از `"p"` است.
3. دوباره مانند مثال قبل در مقایسه لغت نامه ای حرف اول `"2"` بزرگ تر از حرف اول عبارت دیگر `"1"` است.
-4. ارزش های `null` و `undefined` تنها برابر یکدیگرند.
+4. مقادیر `null` و `undefined` تنها برابر یکدیگرند.
5. برابری سختگیرانه، سختگیرانه است. به دلیل تفاوت در نوع داده پاسخ false است.
6. مانند مثال شماره `(4)`، `null` تنها برابر `undefined` است.
7. برابری سختگیرانه برای دو داده از دو نوع متفاوت.
diff --git a/1-js/02-first-steps/09-comparison/article.md b/1-js/02-first-steps/09-comparison/article.md
index 21e1dbc9e..c2f2d1bbc 100644
--- a/1-js/02-first-steps/09-comparison/article.md
+++ b/1-js/02-first-steps/09-comparison/article.md
@@ -7,11 +7,11 @@
- بزرگ تر / کوچک تر: a > b، a < b.
- بزرگ تر / کوچک تر یا مساوی: a >= b، a <= b.
- برابر یا مساوی: `a == b`، توجه کنید که علامت مساوی دوتایی (double equlity) `==` به معنای تست برابری است، در حالی که یک مساوی `a = b` مقدار سمت راست را در متغیر سمت چپ می ریزد.(asign).
-- نا برابری: در ریاضی علامت نابرابری ≠ است، اما در جاوااسکریپت ما از علامت a != b استفاده می کنیم.
+- نابرابری: در ریاضی علامت نابرابری ≠ است، اما در جاوااسکریپت به صورت a != b نوشته میشود.
در این مقاله ما بیشتر درباره تفاوت انواع مقایسه ها، چطور جاوااسکریپت آنها را انجام می دهد، به همراه رفتارهای عجیب و مهم این زبان.
-در انتها شما می توانید به راحتی از از مشکلات مربوط به علامت ها (quirks) دوری کنید.
+در انتها شما می توانید به راحتی از از مشکلات مربوط به علامت ها دوری کنید.
## نتیجه یک boolean است
@@ -48,8 +48,6 @@ alert( 'Z' > 'A' ); // true
alert( 'Glow' > 'Glee' ); // true
alert( 'Bee' > 'Be' ); // true
```
-let result = 5 > 4; // assign the result of the comparison
-alert( result ); // true
الگوریتمی که برای مقایسه دو رشته استفاده می شود بسیار ساده است:
@@ -65,7 +63,7 @@ alert( result ); // true
1. `G` دقیقا مانند `G` است.
2. `l` دقیقا مانند `l` است.
-3. `o` از `e`بزرگ تر است. الگوریتم در این جا به پایان می رسد و نتیجه می گیرد که رشته اول بزرگ تر است.
+3. `o` از `e` بزرگ تر است. الگوریتم در این جا به پایان می رسد و نتیجه می گیرد که رشته اول بزرگ تر است.
```smart header="از نظر تکنیکی بر اساس یک دیکشنری عمل نمی کند ولی کد های یونی (unicode) آن مرتب شده اند."
ترتیب و ارزشی که در الگوریتم مقایسه بالا به هر حرف داده می شود، تقریبا مانند دیکشنری ها یا کتاب های تلفن است، اما نه دقیقا مشابه آن ها.
@@ -83,7 +81,7 @@ alert( '2' > 1 ); // true، رشته '2' به عدد 2 تبدیل می شود.
alert( '01' == 1 ); // true، رشته '01' به عدد 1 تبدیل می شود.
```
-برای مقادیر از نوع boolean، `true` به `1` و `false` به `0` تبدیل می شود.
+برای مقادیر از نوع `true` boolean به `1` و `false` به `0` تبدیل می شود.
برای مثال:
@@ -96,7 +94,7 @@ alert( false == 0 ); // true
این امکان وجود دارد که همزمان:
- دو مقدار با هم مساوی باشند.
-- یکی از آن ها در نوع boolean `false` است و دیگری `true`.
+- یکی از آن ها در نوع `false` boolean است و دیگری `true`.
برای مثال: