কোন স্ট্রিংয়ের শেষ দুটি অক্ষর মুছার সহজ উপায় কী?
উত্তর:
245px245 এ রূপান্তর করতে কেবল রান করুন:
parseInt('245px', 10);
এটি কেবলমাত্র শীর্ষস্থানীয় সংখ্যা ধরে রেখেছে এবং বাকি সমস্ত অংশ ত্যাগ করে।
parseInt('09')!
ব্যবহার
var size = parseInt('245px', 10);
যেখানে 10 হ'ল রেডিক্স সংজ্ঞায়িত parseIntহয় একটি দশমিক মানকে পার্স করে
ParseInt () ফাংশন একটি স্ট্রিংকে পার্স করে এবং পূর্ণসংখ্যা ফেরত দেয়।
স্বাক্ষরটি হ'ল parseInt(string, radix)
দ্বিতীয় যুক্তি একটি বেস দশ নম্বর সিস্টেম ব্যবহার করতে পার্সেন্টকে বাধ্য করে।
কেন? যদি $ (এটি) at
শেষে "পিক্সেল" ছাড়াই পিক্সেল মান রূপান্তর করতে। পার্সফ্লোট ব্যবহার করুন।
parseFloat('245px'); // returns 245
দ্রষ্টব্য: আপনি যদি পার্সেন্ট ব্যবহার করেন তবে মানটি পূর্ণসংখ্য হলে মানটি সঠিক হবে। মানটি যদি 245.50px এর মতো দশমিক এক হয় তবে মানটি 245 এর সাথে গোল করা হবে।
parseFloat()যেমন রেডিক্স গ্রহণ করবে না parseInt()(দেখুন বিকাশকারী.মোজিলা.আর.ইন- ইউএস / ডকস / ওয়েব / জাভা স্ক্রিপ্ট / রেফারেন্স /… এবং স্ট্যাকওভারফ্লো.com/ প্রশ্নগুলি / 8555649 /… )
আশ্চর্যজনকভাবে, সাবস্ট্রিং পদ্ধতিটি s.substr(0, s.length-2);অপসারণের জন্য আসলে বেশ কিছুটা দ্রুত px(হ্যাঁ এটি পরিষ্কার হিসাবে ততটা ভাল নয়, এবং যদি কোনও স্থান থাকে তবে তা থেকে যায় - "250px" -> "250"বনাম)"250 px" -> "250 " )।
আপনি যদি ফাঁকা জায়গাগুলির জন্য অ্যাকাউন্ট করতে চান (যা আপনার সম্ভবত হওয়া উচিত) তবে .trim()ফাংশনটি ব্যবহার করা আসলে substrপরীক্ষাকে যথেষ্ট ধীর করে দেবে যে parseIntপদ্ধতিটি আসলে উচ্চতর হয়ে ওঠে।
ব্যবহারের একটি অতিরিক্ত সুবিধা parseInt(s, 10)হ'ল আপনিও একটি ধরণের রূপান্তর পান এবং তাৎক্ষণিকভাবে গাণিতিক কার্যগুলিতে এটি প্রয়োগ করা শুরু করতে পারেন।
সুতরাং শেষ পর্যন্ত, এটি ফলাফলের সাথে আপনি কী করার পরিকল্পনা করছেন তা নির্ভর করে।
substr পদ্ধতিটি ব্যবহার করা সম্ভবত আপনার সেরা বাজি হবে।s.substr(0, s.length-2) == 0, তবে substrপদ্ধতিটি ব্যবহার করা সবচেয়ে ভাল"250 " == 250 (এমনকি স্থানের সাথেও) এর ফলাফল হবেtrueparseIntরুটটির সাথে যাওয়ার বিষয়টি বিবেচনা করতে চাইতে পারেন ।http://jsperf.com/remove-px-from-coord
Jspref- এ পরীক্ষাগুলি একটি স্থানের জন্য অ্যাকাউন্ট করে। আমি একটি s.split('px')[0]এবং s.replace(/ *px/g, '')ফাংশনও চেষ্টা করেছিলাম , উভয়ই ধীর হয়ে গেছে।
অতিরিক্ত পরীক্ষার কেস যোগ করতে নির্দ্বিধায়।
যদিও পার্সিয়ান্ট () একটি ভাল বিকল্প তবে তবুও এটির অন্যান্য অনেকগুলি সমাধান থাকা ভাল
var pixels = '245px';
Number(pixels.replace('px', ''));
Http://www.w3schools.com/jsref/jsref_substr.asp দেখুন আপনার ক্ষেত্রে এমন কিছু হবে
string.substr(0, string.length - 2)
আমি পছন্দ করি:
"245px".replace(/px/,'')*1
যেহেতু এটি ইনপুটটি ঘিরে নেই।
এছাড়াও, *1এটি আন্তঃতে কাস্টিংয়ের জন্য।
substr()হয় এখন একটি উত্তরাধিকার বৈশিষ্ট্য ; ব্যবহার substring()পরিবর্তে: (সিনট্যাক্স একই এই ক্ষেত্রে )
str.substring(0, str.length-2);
অথবা, ব্যবহার করুন slice():
str.slice(0, -2);
slice()দেখতে অনেক ক্লিনার, আইএমও। নেতিবাচক মানগুলি শেষ থেকে গণনা করে।
remমানগুলির জন্য ব্যবহার করা যায় না ।
parseInt('245px', 10)