জাভাস্ক্রিপ্টে একটি নির্দিষ্ট অ্যারে অবস্থানে (সূচী) কীভাবে একটি আইটেম যুক্ত করতে হয় তা শিখুন।
ধরা যাক আপনি একটি অ্যারেতে একটি আইটেম যোগ করতে চান, কিন্তু আপনি এটিকে যুক্ত করতে চান না (শেষে এটি যোগ করুন) বা এটিকে প্রিপেন্ড করতে চান না (শুরুতে এটি যোগ করুন)। আপনি একটি অ্যারের একটি নির্দিষ্ট অবস্থান/স্থানে আইটেম যোগ করতে চান।
দ্রষ্টব্য:যখন আমরা নির্দিষ্ট অবস্থান/স্থানে ডেটা ম্যানিপুলেট করার বিষয়ে হাঁটাচলা করি, তখন আমরা প্রায়শই একে সূচক বলি। অ্যারে সূচী সহ আমরা 0
এ গণনা শুরু করি , যার মানে হল:
0
হল1
1
হল2
- ইত্যাদি।
সুতরাং আপনার যদি 5টি আইটেম সহ একটি অ্যারে থাকে এবং আপনি 3য় আইটেমটিতে অ্যাক্সেস চান তবে আপনি এটিকে 2
হিসাবে সম্বোধন করবেন .
ঠিক আছে, আপনি যে জন্য এখানে এসেছেন সেটাই করুন।
splice() পদ্ধতি লিখুন
একটি অ্যারের একটি নির্দিষ্ট সূচক অবস্থানে একটি আইটেম যোগ করতে, আমরা শক্তিশালী JavaScript array.splice()
ব্যবহার করতে পারি পদ্ধতি splice()
পদ্ধতি একটি অ্যারে থেকে আইটেম যোগ বা অপসারণ করতে পারে৷
splice()
সিনট্যাক্স এই মত দেখায়:
array.splice(startIndex)
array.splice(startIndex, deleteCount)
array.splice(startIndex, deleteCount, value1)
splice()
পদ্ধতিতে 3 বা তার বেশি আর্গুমেন্ট লাগে:
- আর্গুমেন্ট 1:
startIndex
যেখানে (পজিশন) আপনি কিছু যোগ করতে চান। - আর্গুমেন্ট 2:ঐচ্ছিক
deleteCount
যুক্তি যেখানে আপনি কতগুলি আইটেম মুছতে চান তা নির্দিষ্ট করতে পারেন (startIndex
থেকে অবস্থান)। - আর্গুমেন্ট 3:নতুন আইটেম মান(গুলি) আপনি অ্যারেতে যোগ করতে চান৷
ব্যবহারিক স্প্লাইস() উদাহরণ
তাই বলে রাখি যে আমাদের কাছে "পরে প্রশ্ন জিজ্ঞাসা করুন" নামে একটি কাল্পনিক অ্যাকশন-প্যাকড চলচ্চিত্রের অভিনেতাদের একটি তালিকা রয়েছে৷ অভিনেতাদের মুভিতে তাদের ভূমিকার আকারের উপর ভিত্তি করে একটি ক্রম অনুসারে তালিকাভুক্ত করা হয়।
কাস্টের একজন অভিনেতা ক্ষেপে যাওয়ার সিদ্ধান্ত নেন কারণ তার নাম প্রধান কাস্টের তালিকায় দেখা যায় না:
const mainCastList = [
"Michael Jai White",
"Jean-Claude Van Damme",
"Sigourney Weaver",
"Jason Statham",
"Uma Thurman"
"The Rock",
"Wesley Snipes"
]
এবং বিচলিত অভিনেতা সর্বশক্তিমান ছাড়া আর কেউ নন স্টিভেন সিগাল(!!) এই মুভিতে যিনি উপস্থিত হয়েছেন ঠিক 7 সেকেন্ড, 10 শত্রুকে অজ্ঞান করার জন্য যথেষ্ট সময়। মিস্টার সিগাল বিশ্বাস করেন যে তাকে প্রধান কাস্টের তালিকায় রাখার জন্য এটি যথেষ্ট স্ক্রীন টাইম।
এবং কে স্টিভেন সিগালের সাথে তর্ক করতে যাচ্ছে?
ঠিক আছে, চলুন তাকে splice()
ব্যবহার করে মূল কাস্টের তালিকায় যোগ করি পদ্ধতি এবং আর্গুমেন্ট সিনট্যাক্স যা আপনি এইমাত্র শিখেছেন।
আমরা মাইকেল জাই হোয়াইটের ঠিক পরেই স্টিভেন সিগালকে প্রধান কাস্টের তালিকায় ২য় অভিনেতা হিসেবে যোগ করব (কেন আমি এক মুহূর্তের মধ্যে ব্যাখ্যা করব):
const mainCastList = [
"Michael Jai White",
"Jean-Claude Van Damme",
"Sigourney Weaver",
"Jason Statham",
"Uma Thurman",
"The Rock",
"Wesley Snipes",
]
mainCastList.splice(1, 0, "Steven Seagal")
console.log(mainCastList)
// ["Michael Jai White", "Steven Seagal", "Jean-Claude Van Damme", "Sigourney Weaver", "Jason Statham", "Uma Thurman", "The Rock", "Wesley Snipes"]
সেখানে আপনি স্টিভেন যান, আমি আশা করি আপনি এখন খুশি!
এবং শুধুমাত্র পুনরাবৃত্তি করা শেখার একটি গুরুত্বপূর্ণ অংশ, উপরের কোডে এটিই ঘটছে:
- আমরা
splice()
সংযুক্ত করিmainCastList
এর পদ্ধতি পরিবর্তনশীল - তারপর আমরা
splice()
-এ 3টি আর্গুমেন্ট প্রয়োগ করি , startIndex অবস্থান (1
),deleteCount
(0
=কিছুই মুছে ফেলা হয় না), এবং অবশেষে, যে আইটেমটি আমরা সেই সূচক অবস্থানে যোগ করতে চাই ("Steven Seagal"
)।
ওহ এবং যে কারণে আমরা মিস্টার সিগালকে তালিকার এক নম্বর হিসাবে যুক্ত করতে পারি না তা হল যে মাইকেল জাই হোয়াইট তার পাছায় লাথি মারবে, স্পষ্টতই।
স্প্লিস() পদ্ধতি সম্পর্কে জেনে রাখা ভালো
একসাথে আরও আইটেম যোগ করুন
আপনি যদি একবারে আরও আইটেম যোগ করতে চান, আপনি সেগুলিকে কমা দিয়ে আলাদা করুন, যেমন:
mainCastList.splice(1, 0, "Steven Seagal", "Sylvester Stallone")
startIndex থেকে সমস্ত আইটেম মুছুন
আপনি যদি ২য় আর্গুমেন্ট পাস না করেন (আমাদের উদাহরণে, 0
) তারপর সব startIndex
থেকে আইটেম ডিফল্টরূপে অবস্থান মুছে ফেলা হবে। তাই splice()
ব্যবহার করার সময় সতর্ক থাকুন বাস্তব জীবনের প্রকল্পগুলিতে৷
অ্যারের শেষ থেকে শুরু করুন
আপনি যদি শুরুর পরিবর্তে অ্যারের শেষ থেকে আইটেম যোগ/মুছে ফেলতে চান এমন অবস্থানটি নির্দিষ্ট করতে চান, তাহলে নেতিবাচক মান ব্যবহার করুন প্রথম splice()
-এ যুক্তি, এই মত:
mainCastList.splice(-1, 0, "Steven Seagal")
console.log(mainCastList)
// ["Michael Jai White", "Jean-Claude Van Damme", "Sigourney Weaver", "Jason Statham", "Uma Thurman", "The Rock", "Steven Seagal", "Wesley Snipes"]
এখন মিস্টার সিগাল প্রধান কাস্টের তালিকায় দ্বিতীয় স্থানে রয়েছেন, এটি একটি সাহসী সিদ্ধান্ত যা আপনি নিজের ঝুঁকিতে নেন।