使用原型链继承:让子对象调用父对象中的方法,实现数组去重;
时间: 2023-12-06 15:45:07 浏览: 72
vue中对象数组去重的实现
首先,我们可以定义一个父对象,包含一个去重的方法:
```javascript
const uniqueArray = {
removeDuplicates: function(arr) {
return arr.filter((item, index) => arr.indexOf(item) === index);
}
};
```
然后,我们可以使用原型链继承,创建一个子对象,并在子对象中调用父对象中的去重方法:
```javascript
const myArray = [1, 2, 2, 3, 4, 4, 5];
const myUniqueArray = Object.create(uniqueArray);
const unique = myUniqueArray.removeDuplicates(myArray);
console.log(unique); // [1, 2, 3, 4, 5]
```
在上面的代码中,我们使用 `Object.create` 方法创建了一个新的对象 `myUniqueArray`,并将其原型指向了 `uniqueArray`,这样 `myUniqueArray` 就可以继承 `uniqueArray` 中的方法。然后我们在 `myUniqueArray` 中调用了父对象中的 `removeDuplicates` 方法,将原数组去重得到了一个新的数组。
阅读全文