برنامه نویسی

چگونه یک آیتم خاص را از یک آرایه در جاوا اسکریپت حذف کنیم؟

Summarize this content to 400 words in Persian Lang
بسیار رایج است که نیاز به حذف مقدار خاصی از آرایه در جاوا اسکریپت وجود دارد. در این پست، من نه تنها نحوه انجام این کار را به شما نشان می دهم، بلکه نحوه پیاده سازی آن را به گونه ای که گویی یک روش بومی روی آرایه ها است، با انعطاف پذیری برای مدیریت انواع مختلف داده ها، از جمله اشیاء، موارد اولیه و منطق مقایسه سفارشی نشان می دهم. .

قبل از شروع، می‌خواهم شما را به بازدید از 0dev، یک پلتفرم داده منبع باز که با زبان طبیعی کار می‌کند، دعوت کنم. از 0dev برای دسترسی به داده های خود بدون پرس و جوهای پیچیده SQL، تجسم آن ها بدون هیچ گونه کدنویسی و ایجاد بینش بدون هیچ گونه تجربه علم داده استفاده کنید.مخزن: https://github.com/0dev-hq/0dev

بیایید یک روش حذف سفارشی روی آرایه‌های جاوا اسکریپت ایجاد کنیم، که به آن اجازه می‌دهد اولین رخداد یک مقدار را به‌طور پیش‌فرض حذف کند یا همه موارد را در صورت مشخص شدن حذف کند. علاوه بر این، با افزودن پشتیبانی از یک تابع مقایسه کننده، آن را تقویت خواهیم کرد و به ما امکان کنترل نحوه تطبیق مقادیر را می دهد.

Array.prototype.remove = function(value, removeAll = false, comparator = (a, b) => a === b) {
if (removeAll) {
return this.filter(item => !comparator(item, value));
} else {
const index = this.findIndex(item => comparator(item, value));
if (index !== -1) this.splice(index, 1); // Remove the item if found
return this;
}
};

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

توضیح

Array.prototype.remove

اضافه کردن remove به Array.prototype این تابع را مستقیماً در هر نمونه آرایه ای در دسترس قرار می دهد، درست مانند روش های بومی مانند map، filter، یا splice.

removeAll

را removeAll پارامتر یک راه ساده برای کنترل رفتار روش ارائه می دهد. به طور پیش فرض، removeAll تنظیم شده است false، به این معنی که فقط اولین وقوع از مشخص شده است value حذف خواهد شد. اگر removeAll تنظیم شده است true، روش حذف خواهد شد همه وقوع مقدار مشخص شده

comparator

را comparator پارامتر ممکن است در ابتدا زائد به نظر برسد، اما انعطاف پذیری بیشتری به این روش اضافه می کند. هنگام کار با آرایه های اشیاء، باید مقادیر را بر اساس ویژگی ها به جای برابری ساده مطابقت دهید، اینجا جایی است که comparator پارامتر مفید است

به عنوان مثال، اگر آرایه ای از اشیاء کاربر دارید و می خواهید کاربری با نام خاصی را حذف کنید، می توانید از تابع مقایسه کننده برای مقایسه بر اساس name دارایی

مثال های استفاده

حذف ارزش های اولیه

برای موارد استفاده اساسی با مقادیر اولیه مانند اعداد، remove روش یکپارچه کار می کند

javascriptCopy codelet numbers = [1, 2, 3, 4, 2];
numbers = numbers.remove(2); // Removes the first occurrence of 2
console.log(numbers); // Output: [1, 3, 4, 2]

numbers = numbers.remove(2, true); // Removes all occurrences of 2
console.log(numbers); // Output: [1, 3, 4]

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

اینجا، removeAll پیش فرض به false، فقط اولین مورد را حذف می کند. تنظیم removeAll به true همه را حذف می کند 2s از آرایه.

حذف اشیا با مقایسه کننده

هنگام برخورد با آرایه های اشیاء، comparator تابع می تواند دقیقاً مشخص کند که روش چگونه باید مطابقت ها را شناسایی کند.

javascriptCopy codelet people = [
{ id: 1, name: ‘Alice’ },
{ id: 2, name: ‘Bob’ },
{ id: 3, name: ‘Alice’ }
];
// Remove all occurrences of objects with the name ‘Alice’
people = people.remove({ name: ‘Alice’ }, true, (a, b) => a.name === b.name);
console.log(people);
// Output: [{ id: 2, name: ‘Bob’ }]

وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

کد نویسی مبارک! 🙂

بسیار رایج است که نیاز به حذف مقدار خاصی از آرایه در جاوا اسکریپت وجود دارد. در این پست، من نه تنها نحوه انجام این کار را به شما نشان می دهم، بلکه نحوه پیاده سازی آن را به گونه ای که گویی یک روش بومی روی آرایه ها است، با انعطاف پذیری برای مدیریت انواع مختلف داده ها، از جمله اشیاء، موارد اولیه و منطق مقایسه سفارشی نشان می دهم. .


قبل از شروع، می‌خواهم شما را به بازدید از 0dev، یک پلتفرم داده منبع باز که با زبان طبیعی کار می‌کند، دعوت کنم. از 0dev برای دسترسی به داده های خود بدون پرس و جوهای پیچیده SQL، تجسم آن ها بدون هیچ گونه کدنویسی و ایجاد بینش بدون هیچ گونه تجربه علم داده استفاده کنید.

مخزن: https://github.com/0dev-hq/0dev


بیایید یک روش حذف سفارشی روی آرایه‌های جاوا اسکریپت ایجاد کنیم، که به آن اجازه می‌دهد اولین رخداد یک مقدار را به‌طور پیش‌فرض حذف کند یا همه موارد را در صورت مشخص شدن حذف کند. علاوه بر این، با افزودن پشتیبانی از یک تابع مقایسه کننده، آن را تقویت خواهیم کرد و به ما امکان کنترل نحوه تطبیق مقادیر را می دهد.

Array.prototype.remove = function(value, removeAll = false, comparator = (a, b) => a === b) {
  if (removeAll) {
    return this.filter(item => !comparator(item, value));
  } else {
    const index = this.findIndex(item => comparator(item, value));
    if (index !== -1) this.splice(index, 1); // Remove the item if found
    return this;
  }
};
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

توضیح

Array.prototype.remove

اضافه کردن remove به Array.prototype این تابع را مستقیماً در هر نمونه آرایه ای در دسترس قرار می دهد، درست مانند روش های بومی مانند map، filter، یا splice.

removeAll

را removeAll پارامتر یک راه ساده برای کنترل رفتار روش ارائه می دهد. به طور پیش فرض، removeAll تنظیم شده است false، به این معنی که فقط اولین وقوع از مشخص شده است value حذف خواهد شد. اگر removeAll تنظیم شده است true، روش حذف خواهد شد همه وقوع مقدار مشخص شده

comparator

را comparator پارامتر ممکن است در ابتدا زائد به نظر برسد، اما انعطاف پذیری بیشتری به این روش اضافه می کند. هنگام کار با آرایه های اشیاء، باید مقادیر را بر اساس ویژگی ها به جای برابری ساده مطابقت دهید، اینجا جایی است که comparator پارامتر مفید است

به عنوان مثال، اگر آرایه ای از اشیاء کاربر دارید و می خواهید کاربری با نام خاصی را حذف کنید، می توانید از تابع مقایسه کننده برای مقایسه بر اساس name دارایی

مثال های استفاده

حذف ارزش های اولیه

برای موارد استفاده اساسی با مقادیر اولیه مانند اعداد، remove روش یکپارچه کار می کند

javascriptCopy codelet numbers = [1, 2, 3, 4, 2];
numbers = numbers.remove(2); // Removes the first occurrence of 2
console.log(numbers); // Output: [1, 3, 4, 2]

numbers = numbers.remove(2, true); // Removes all occurrences of 2
console.log(numbers); // Output: [1, 3, 4]
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

اینجا، removeAll پیش فرض به false، فقط اولین مورد را حذف می کند. تنظیم removeAll به true همه را حذف می کند 2s از آرایه.

حذف اشیا با مقایسه کننده

هنگام برخورد با آرایه های اشیاء، comparator تابع می تواند دقیقاً مشخص کند که روش چگونه باید مطابقت ها را شناسایی کند.

javascriptCopy codelet people = [
  { id: 1, name: 'Alice' },
  { id: 2, name: 'Bob' },
  { id: 3, name: 'Alice' }
];
// Remove all occurrences of objects with the name 'Alice'
people = people.remove({ name: 'Alice' }, true, (a, b) => a.name === b.name);
console.log(people); 
// Output: [{ id: 2, name: 'Bob' }]
وارد حالت تمام صفحه شوید

از حالت تمام صفحه خارج شوید

کد نویسی مبارک! 🙂

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا