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

JavaScript-এ splice() ব্যবহার করে অ্যারে ইন-প্লেস পরিবর্তন করা


আমাদের একটি ফাংশন লিখতে হবে যা, একটি অ্যারে arr এবং একটি নম্বর n দেওয়া থাকলে, সেটি এমন একটি অ্যারে রিটার্ন করবে যেখানে এলিমেন্টগুলো n-এর চেয়ে অধিকবার রিপিট করছে না। এবং এটা করতে হবে ডিজায়ারড এলিমেন্টের ইনডেক্স ডিস্টার্ব না করে। তাহলে, এই ফাংশনের কোড লিখি,

আমরা একটি হ্যাশম্যাপে সব এলিমেন্টের কাউন্ট রাখব এবং ইটারেশন중에 যখনই কোনো এলিমেন্টের কাউন্ট मैক্সিমাম কাউন্ট অতিক্রম করবে, সেটি splice করে মুছে ফেলব। কোডটি নিচে:

উদাহরণ

const arr = [7, 26, 21, 41, 43, 2, 26, 24, 10, 26, 10, 10, 24, 35, 35, 35, 43, 26, 41, 7, 24, 24, 21, 24, 10, 35, 10, 7, 24, 7, 35, 26, 41, 35, 2, 43, 24, 2, 41, 26, 41, 7, 7, 26, 2, 10, 43, 10, 35, 41, 24, 7, 2, 2, 7, 2, 26, 24, 26, 43, 43, 21, 10, 28, 10]; const array = [12, 4, 2, 12, 32, 21, 67, 4, 32, 5]; const deleteExtra = (arr, n) => {    const map = {};    for(let i = 0; i < arr.length; i++){       if(map[arr[i]]){          if(map[arr[i]] >= n){             arr.splice(i, 1);             i--;          }else{             map[arr[i]]++;          }          continue;       };       map[arr[i]] = 1;    } }; deleteExtra(array, 1); deleteExtra(arr, 2); console.log(array); console.log(arr);

আউটপুট

কনসোলে আউটপুট হবে:

[    12, 4, 2, 32,    21, 67, 5 ] [    7, 26, 21, 41, 43, 2, 26,    24, 10, 10, 24, 35, 35, 43,    41, 7, 21, 2, 28 ]

  1. জাভাস্ক্রিপ্ট অ্যারেতে জোড় পজিশনের ডিজিট এক্সিকিউট করা

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

  3. জাভাস্ক্রিপ্টে অ্যারেতে নেস্টেড অবজেক্ট মানগুলোর যোগফল

  4. জাভাস্ক্রিপ্ট অবজেক্টের অ্যারেতে অ্যারে মেথডগুলো ব্যবহার করা