برای اینکه مرورگر با اعداد فارسی مثل اعداد انگلیسی رفتار کنه باید چیکار کرد.
عدد فارسی که وارد میکنم متن بعد از else رو نمایش میده.
سلام
لطفا قطعه کد مورد نظرتون را آپلود کنید
اما برای راهنمایی احتمالا اعداد فارسی را بعنوان استرینگ میگیرید و اعداد انگلیسی نامبر هستند
برای همین شرط شما را شامل نمیشوند
موفق باشید
مریم علی شاهی۰۱ تیر ۱۴۰۲، ۱۸:۴۴
سلام
وقت بخیر
دقیقا همین طور هست که میفرمایید،برا اینکه اعداد فارسی رو "string" حساب نکنه،راهی هست؟
کد :
if (age > 20 && age <= 50) {
alert("you can use our website");
} else if (age > 50) {
alert("Good morning");
} else {
alert("you can not use our website");
}
محمد حسین۰۲ تیر ۱۴۰۲، ۰۳:۲۵
سلام،
این موضوعی که در ادامه میارم، نیاز دارید جلسات بیشتری رو بگذرونید تا با replace و همچنین regex آشنا بشید منتها بهمین شکلی که مثال رو میارم میتونید کپی کنید و استفاده کنید.
قبل از if باید رقم هارو چک کنید اگر هر رقم فارسی بود، تبدیل به انگلیسی بشه.
نمونه مثال رو ببینید:
conste2p = s => s.replace(/\\d/g, d =>'۰۱۲۳۴۵۶۷۸۹'[d])
conste2a = s => s.replace(/\\d/g, d =>'٠١٢٣٤٥٦٧٨٩'[d])
constp2e = s => s.replace(/[۰-۹]/g, d =>'۰۱۲۳۴۵۶۷۸۹'.indexOf(d))
consta2e = s => s.replace(/[٠-٩]/g, d =>'٠١٢٣٤٥٦٧٨٩'.indexOf(d))
constp2a = s => s.replace(/[۰-۹]/g, d =>'٠١٢٣٤٥٦٧٨٩'['۰۱۲۳۴۵۶۷۸۹'.indexOf(d)])
consta2p = s => s.replace(/[٠-٩]/g, d =>'۰۱۲۳۴۵۶۷۸۹'['٠١٢٣٤٥٦٧٨٩'.indexOf(d)])
e2p("asdf1234") // asdf۱۲۳۴e2a("asdf1234") // asdf١٢٣٤p2e("asdf۱۲۳۴") // asdf1234a2e("asdf١٢٣٤") // asdf1234p2a("asdf۱۲۳۴") // asdf١٢٣٤a2p("asdf١٢٣٤") // asdf۱۲۳۴
e2p: یعنی english to persian
e2a: یعنی english to arabic
یک پکیج جامع هم برای تبدیلات فارسی و انگلیسی وجود دارد که بسیار کارامد خواهد بود. داکیومنت persian-tools رو مطالعه کنید و به مثال هاش توجه کنید.