چرا تابع parseInt در جاوا اسکریپت عمل نمبکنه؟؟!!!
سلام
من یک تاریخ را از ورودی کاربر گرفتم و توسط تابع ()split در جاوا اسکریپت اونو جداسازی کردم و در آرایه قرار دادم. بعدش که میخولم اک تک اندیسهای آرایه رو با تابع ()parseInt به نوع عددی تبدیل کنم و به سمت فانکشن دیگه ای بفرستم شون متاسفانه تابع parseInt برای اک اک شون مقدار NaN برمیگردونه در حالیکه مقادیر از نوع String هستند. ولی اگه همون مقادیر رو بصورت رشته ای (مثلاً": "1376") وارد کنم تابع parsrInt عمل میکنه.:متفکر::متفکر:
مثال :
var date="1395/05/07";
var splitString= date.split("/");
var a1= parseInt(splitString[0]); // ==> NaN
var a2= parseInt(splitString[1]); // ==> NaN
var a3= parseInt(splitString[2]); // ==> NaN
نقل قول: چرا تابع parseInt در جاوا اسکریپت عمل نمبکنه؟؟!!!
date رشته نیست یه آبجکت از کلاس Date هستش برای همین روش نمیتونی split اجرا کنی در نتیجه آرایه ای وجود نخواهد داشت
بگزریم که اگه آبجکت هم نبود date خروجی که میده به صورت دیفالت توش / نداره و بازم کدت جواب نمیده خروجیش همچین چیزیه
Thu Oct 05 2017 15:40:29 GMT+0330 (Iran Standard Time)
مشکل شما اینه که خروجی نمیگیری از کد هات و همینجوری چشم بسته چندین خط کد رو اجرا میکنی و و قتی مشکلی پیش میاد نمیتونی متوجه بشی مشکل از کدوم خط هستش و فقط خط آخر رو نگاه میکنی
سعی کن جاهای مختلف کدت با console.log و یا اگه اون رو بلد نیستی alert خروجی بگیری از متغیر های مختلف و مطمئن بشی همون مقداری که انتظار میره رو دارن (اگه میخای واقعا یاد بگیری و وقت بزاری رو js حتما کنسول رو یاد بگیر )
https://www.w3schools.com/jsref/jsref_tostring_date.asp
نقل قول: چرا تابع parseInt در جاوا اسکریپت عمل نمبکنه؟؟!!!
سلام
کدتون مشکلی نداره ... باید جواب بده !
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>test</title>
<script>
var date = "1395/05/07";
var splitString = date.split("/");
var a1 = parseInt(splitString[0]); // ==> NaN
var a2 = parseInt(splitString[1]); // ==> NaN
var a3 = parseInt(splitString[2]); // ==> NaN
test(a1+a2+a3);
function test(aa)
{
alert(aa); // ==> 1407
}
</script>
</head>
<body>
</body>
</html>
نقل قول: چرا تابع parseInt در جاوا اسکریپت عمل نمبکنه؟؟!!!
بله به نظر من هم مشکلی نداره
نقل قول: چرا تابع parseInt در جاوا اسکریپت عمل نمبکنه؟؟!!!
نقل قول:
نوشته شده توسط
Tekyegah
سلام
کدتون مشکلی نداره ... باید جواب بده !
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>test</title>
<script>
var date = "1395/05/07";
var splitString = date.split("/");
var a1 = parseInt(splitString[0]); // ==> NaN
var a2 = parseInt(splitString[1]); // ==> NaN
var a3 = parseInt(splitString[2]); // ==> NaN
test(a1+a2+a3);
function test(aa)
{
alert(aa); // ==> 1407
}
</script>
</head>
<body>
</body>
</html>
ممنونم از پاسخگویی دوستان .
ولی بالاخره مشکلش حل شده. همونطوریکه شما دوستان در این انجمن و سایر انجمن ها کد منو تائید کردید و خودمم توی این موضوع مونده لودم که چرا کد درسته ولی در تبدیل به نوع هددی با فانکسن parseInt مقدار NaN برمیگردونه بالاخره متوجه شدم که کداسکیی که مثلاً برای عدد یک برمیگردونه باید 49 باشه در حالیکه یونیکدش رو که 1777 هست رو برمیگردونه وبا نوشتن یک سوئیچ کیس ساده مشکلم رفع شد ولی اینکه دلیلش چیه که کد اسکی یونیکد رو برمیگردونه رو هنوز نه من متوجه شدم و نه هیچکدوم از استایدی که بیش از 10 روزه این مشکل رو باهاشون مطرح کردم:گیج: