تبدیل انوع داده
اهمیت: 5
نتیجه این عبارات چه خواهد بود ؟
"" + 1 + 0
"" - 1 + 0
true + false
6 / "3"
"2" * "3"
4 + 5 + "px"
"$" + 4 + 5
"4" - 2
"4px" - 2
" -9 " + 5
" -9 " - 5
null + 1
undefined + 1
" \t \n" - 2
به خوبی روی آن فکر کنید، بنویسید و با پاسخها مقایسه کنید.
"" + 1 + 0 = "10" // (1)
"" - 1 + 0 = -1 // (2)
true + false = 1
6 / "3" = 2
"2" * "3" = 6
4 + 5 + "px" = "9px"
"$" + 4 + 5 = "$45"
"4" - 2 = 2
"4px" - 2 = NaN
" -9 " + 5 = " -9 5" // (3)
" -9 " - 5 = -14 // (4)
null + 1 = 1 // (5)
undefined + 1 = NaN // (6)
" \t \n" - 2 = -2 // (7)
- علامت جمع همراه با رشته
"" + 1
عدد1
را به رشته تبدیل میکند:"1 = "" + 1"
، و سپس داریم:"1" + 0
که همین قاعده برای آن نیز برقرار خواهد بود. - علامت تفریق (مانند اکثر عملگرهای ریاضیاتی) فقط با اعداد کار میکند. این عملگر رشته خالی را به
0
تبدیل میکند. - علامت جمع به همراه رشته ، باعث تبدیل عدد
5
به رشته و سپس چسباندن آن بهم میشود. - علامت تفریق همیشه مقدار را به عدد تبدیل میکند. در نتیجه
" 9- "
را به عدد9–
تبدیل میکند (فاصلههای خالی را نیز حذف میکند). null
پس از تبدیل به عدد0
خواهد بود.undefined
پس از تبدیل به عددNaN
خواهد بود.- هنگام تبدیل یک رشته به عدد، کاراکترهای فاصله (اسپیس) از رشته حذف میشوند. در اینجا کل رشته از کاراکترهای فاصله تشکیل شده است، مانند ‘\t’، ‘\n’ و یک فاصلهی «معمولی» بین آنها. پس، مانند یک رشتهٔ خالی،
0
میشود.