২০১ 2016 সালের অক্টোবরে সম্পাদিত
- এটি সহজ, স্বজ্ঞাত এবং স্পষ্ট করে নিন ( ওকামের রেজার )
- এটি পরিবর্তনযোগ্য (মূল অ্যারেটি অপরিবর্তিত থাকবে)
- স্ট্যান্ডার্ড জাভাস্ক্রিপ্ট ফাংশন দিয়ে এটি করুন, যদি আপনার ব্রাউজার তাদের সমর্থন না করে - পলিফিল ব্যবহার করুন
এই কোড উদাহরণে আমি অ্যারে থেকে অযাচিত আইটেমগুলি সরিয়ে ফেলতে "অ্যারে.ফিল্টার (...)" ফাংশনটি ব্যবহার করি । এই ফাংশনটি মূল অ্যারে পরিবর্তন করে না এবং একটি নতুন তৈরি করে। যদি আপনার ব্রাউজার এই ফাংশনটি সমর্থন করে না (যেমন সংস্করণ 9 এর পূর্বে ইন্টারনেট এক্সপ্লোরার, বা 1.5 সংস্করণের আগে ফায়ারফক্স), মজিলা থেকে ফিল্টার পলফিল ব্যবহার বিবেচনা করুন ।
আইটেম সরানো (ECMA-262 সংস্করণ 5 কোড ওরফে পুরানো স্টাইল জাভাস্ক্রিপ্ট)
var value = 3
var arr = [1, 2, 3, 4, 5, 3]
arr = arr.filter(function(item) {
return item !== value
})
console.log(arr)
// [ 1, 2, 4, 5 ]
সরানো আইটেম (ECMAScript 6 কোড)
let value = 3
let arr = [1, 2, 3, 4, 5, 3]
arr = arr.filter(item => item !== value)
console.log(arr)
// [ 1, 2, 4, 5 ]
গুরুত্বপূর্ণ ECMAScript 6 "() => {}" তীর ফাংশন সিনট্যাক্স মোটেই ইন্টারনেট এক্সপ্লোরার, 45 সংস্করণের আগে ক্রোম, 22 সংস্করণের আগে ফায়ারফক্স এবং 10 সংস্করণের আগে সাফারি সমর্থিত নয়। পুরানো ব্রাউজারগুলিতে ECMAScript 6 সিনট্যাক্স ব্যবহার করতে আপনি ব্যাবেলজেএস ব্যবহার করতে পারেন ।
একাধিক আইটেম সরানো (ECMAScript 7 কোড)
এই পদ্ধতির অতিরিক্ত সুবিধা হ'ল আপনি একাধিক আইটেম সরিয়ে ফেলতে পারেন
let forDeletion = [2, 3, 5]
let arr = [1, 2, 3, 4, 5, 3]
arr = arr.filter(item => !forDeletion.includes(item))
// !!! Read below about array.includes(...) support !!!
console.log(arr)
// [ 1, 4 ]
গুরুত্বপূর্ণ "array.includes (...)" ফাংশন 9 সংস্করণ আগে, 43 সংস্করণ সামনে এ সব ইন্টারনেট এক্সপ্লোরার, ক্রোম 47 সংস্করণ আগে, ফায়ারফক্স সমর্থিত নয় সাফারি এবং এজ আগে 14 সংস্করণ, যাতে এখানে মোজিলা থেকে polyfill হয় ।
একাধিক আইটেম সরানো (ভবিষ্যতে, সম্ভবত)
যদি "এই-বাইন্ডিং সিন্ট্যাক্স" প্রস্তাবটি সর্বদা গৃহীত হয় তবে আপনি এটি করতে সক্ষম হবেন:
// array-lib.js
export function remove(...forDeletion) {
return this.filter(item => !forDeletion.includes(item))
}
// main.js
import { remove } from './array-lib.js'
let arr = [1, 2, 3, 4, 5, 3]
// :: This-Binding Syntax Proposal
// using "remove" function as "virtual method"
// without extending Array.prototype
arr = arr::remove(2, 3, 5)
console.log(arr)
// [ 1, 4 ]
ব্যাবেলজেএস এ নিজে চেষ্টা করুন :)
উল্লেখ