دست نوشته های خودم

همه درددلها ، حرفها و یادداشتهای خودم …
parseInt برای ۰۸ و ۰۹ در جاوااسکریپت
نویسنده:
۲ اردیبهشت ۹۱

چند روزی هست که دارم برای محل کارم ، یک سیستم ثبت مرخصی آنلاین مینویسم که در جوملا برنامه نویسی میشه. در بعضی از قسمتها نیاز به چک های جاوا اسکریپتی و کلاینت ساید داشتم که ببینم کاربر عددش رو درست زده یا نه. که با یک نکته خیلی عجیب مواجه شدم.

همه ما میدونیم که در جاوا اسکریپت نوع متغیر به معنی واقعی نداریم و برای اینکار باید مقادیر رو به نوعی که میخایم تبدیل کنیم. برای مثال در تبدیل رشته به عدد از تابع parseInt استفاده میکنیم ! اما مشکل اینجا بود که برای تبدیل مقدار ۰۸ و ۰۹ به عدد ، تابع پارس اینت ، عملیات را در مبنای ۸ به صورت پیش فرض انجام میدهد و لذا ، تبدیل ۰۸ و ۰۹ به عدد مساوی ۰ خواهد بود !

برای اینکار کافی است که این کار را بکنید :

parseInt(“08”) ===> parseInt(“08”,10) just change it

با کمک روش بالا ، محاسبه عدد در مبنای ۱۰ انجام می شود و مشکلی برای تبدیل نیست .

برای اطلاعات بیشتر در مورد این تایع اینجا را ببینید

Facebooktwittergoogle_pluslinkedinmail

یک پیام برای parseInt برای ۰۸ و ۰۹ در جاوااسکریپت

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *