lengthএকটি সম্পত্তি, একটি পদ্ধতি নয়। আপনি এটি কল করতে পারবেন না, সুতরাং আপনার প্রথম বন্ধনী প্রয়োজন নেই ():
function getlength(number) {
return number.toString().length;
}
আপডেট: মন্তব্যগুলিতে আলোচিত হিসাবে, উপরের উদাহরণটি ভাসমান সংখ্যার জন্য কাজ করবে না। এটা কাজ আমরা হয় সঙ্গে একটি নির্দিষ্ট সময়ের পরিত্রাণ পেতে পারেন তা নিশ্চিত করার String(number).replace('.', '').length, বা রেগুলার এক্সপ্রেশনের সাথে ডিজিটের গণনা: String(number).match(/\d/g).length।
গতির দিক দিয়ে প্রদত্ত সংখ্যায় সংখ্যা অর্জনের দ্রুততম উপায়টি হচ্ছে এটি গাণিতিকভাবে করা। জন্য ধনাত্মক পূর্ণসংখ্যা সেখানে সঙ্গে একটি বিস্ময়কর অ্যালগরিদম হয় log10:
var length = Math.log(number) * Math.LOG10E + 1 | 0; // for positive integers
সমস্ত ধরণের পূর্ণসংখ্যার জন্য (নেতিবাচকগুলি সহ) @ এমড্রাব্লু 247 থেকে একটি উজ্জ্বল অপ্টিমাইজড সমাধান রয়েছে তবে ব্যবহারের ক্ষেত্রে সতর্ক থাকুন Math.log10, কারণ এটি বহু লিগ্যাসি ব্রাউজারগুলি সমর্থন করে না by তাই প্রতিস্থাপন Math.log10(x)সঙ্গে Math.log(x) * Math.LOG10Eসামঞ্জস্য সমস্যার সমাধান হবে।
ভাসমান পয়েন্ট গণিতের সুপরিচিত আচরণের কারণে দশমিক সংখ্যার জন্য দ্রুত গাণিতিক সমাধানগুলি তৈরি করা সহজ হবে না , তাই কাস্ট-টু-স্ট্রিং পদ্ধতির পক্ষে আরও সহজ এবং বোকা প্রমাণ হবে। @ স্ট্রিটলোগিকস দ্বারা উল্লিখিত হিসাবে দ্রুত কাস্টিং সরল সংখ্যার সাথে স্ট্রিং কনটেনটেশনে করা যেতে পারে, যার ফলে প্রতিস্থাপনের সমাধানটি রূপান্তরিত হতে পারে:
var length = (number + '').replace('.', '').length; // for floats