কম্পিউটার টিউটোরিয়াল

JavaScript-এ অ্যারে থেকে লিডিং জিরো (Leading Zeros) রিমুভ করা

JavaScript-এ filter() এবং ক্লোজার ব্যবহার করে অ্যারের শুরুতে থাকা শূন্য (leading zeros) রিমুভ করা যায়, কিন্তু মাঝপথের জিরো রাখা থাকে।

কোড উদাহরণ

const removeLeadingZero = input => 
    input.filter((lastValue => value => lastValue = lastValue || value)(false));

console.log(removeLeadingZero([10, 0, 12, 0, 0]));       // [10, 0, 12, 0, 0]
console.log(removeLeadingZero([0, 0, 0, 0, 0, 0, 10, 12, 0])); // [10, 12, 0]
console.log(removeLeadingZero([12, 0, 0, 1, 0, 0]));     // [12, 0, 0, 1, 0, 0]

চলানোর পদ্ধতি

  1. কোডটি leadingZero.js নামে সংরক্ষণ করুন।
  2. টার্মিনালে চালান: node leadingZero.js

আউটপুট

[ 10, 0, 12, 0, 0 ]
[ 10, 12, 0 ]
[ 12, 0, 0, 1, 0, 0 ]

কোড ব্যাখ্যা (ডিকোডেড)

// আসল লজিক বুঝতে সহজ ורژن:
function removeLeadingZeros(arr) {
    let foundNonZero = false;
    return arr.filter(value => {
        if (!foundNonZero && value === 0) {
            return false; // লিডিং জিরো - বাদ দাও
        }
        foundNonZero = true; // প্রথম নন-জিরো পাওয়া গেলে
        return true; // বাকি সব রাখো
    });
}

অন্যান্য পদ্ধতিগুলো

পদ্ধতিকোডব্যাখ্যা
findIndexarr.slice(arr.findIndex(x => x !== 0))প্রথম নন-জিরোর ইনডেক্স থেকে স্লাইস
while লুপwhile(arr[0]===0) arr.shift()মিউটেট করে (মূল অ্যারে বদলায়)
reducearr.reduce((a,v)=>a.length||v? [...a,v]:a, [])ফাংশনাল পদ্ধতি

স্ট্রিং-এর জন্য (নাম্বার স্ট্রিং)

const str = "00001234";
console.log(str.replace(/^0+/, '')); // "1234"
console.log(Number(str)); // 1234 (নাম্বারে রূপান্তর)

ব্যবহার ক্ষেত্র

  • আইডি নরমালাইজেশন (০০০১২৩ → ১২৩)
  • বাইনারি/হেক্স ডেটা প্রসেসিং
  • ফাইন্যান্সিয়েল লেজার ক্লিনআপ
  1. জাভাস্ক্রিপ্ট Array slice() মেথড

  2. জাভাস্ক্রিপ্ট Array shift() মেথড

  3. জাভাস্ক্রিপ্ট Array reverse() মেথড

  4. জাভাস্ক্রিপ্টে অ্যারে ডিস্ট্রাকচারিং