Computer >> Máy Tính >  >> Lập trình >> Javascript

Làm cách nào để xóa một mục cụ thể khỏi một mảng trong JavaScript

Chúng tôi được yêu cầu viết một hàm cho mảng Array.prototype.remove (). Nó chấp nhận một đối số; nó là một hàm gọi lại hoặc một phần tử có thể có của mảng. Nếu đó là một hàm thì giá trị trả về của hàm đó phải được coi là phần tử có thể có của mảng và chúng ta phải tìm và xóa phần tử đó khỏi mảng tại chỗ và hàm sẽ trả về giá trị nếu phần tử được tìm thấy và bị xóa, nếu không nó sẽ trả về false .

Do đó, hãy viết mã cho chức năng này -

Ví dụ

const arr = [12, 45, 78, 54, 1, 89, 67];
const names = [{
   fName: 'Aashish',
   lName: 'Mehta'
}, {
      fName: 'Vivek',
      lName: 'Chaurasia'
}, {
      fName: 'Rahul',
      lName: 'Dev'
}];
const remove = function(val){
   let index;
   if(typeof val === 'function'){
      index = this.findIndex(val);
   }else{
      index = this.indexOf(val);
   };
   if(index === -1){
      return false;
   };
   return !!this.splice(index, 1)[0];
};
Array.prototype.remove = remove;
console.log(arr.remove(54));
console.log(arr);
console.log(names.remove((el) => el.fName === 'Vivek'));
console.log(names);

Đầu ra

Đầu ra trong bảng điều khiển sẽ là -

true
[ 12, 45, 78, 1, 89, 67 ]
true
[
   { fName: 'Aashish', lName: 'Mehta' },
   { fName: 'Rahul', lName: 'Dev' }
]