# Prefer borrowing methods from the prototype instead of the instance πŸ’Ό This rule is enabled in the following [configs](https://github.com/sindresorhus/eslint-plugin-unicorn#recommended-config): βœ… `recommended`, β˜‘οΈ `unopinionated`. πŸ”§ This rule is automatically fixable by the [`--fix` CLI option](https://eslint.org/docs/latest/user-guide/command-line-interface#--fix). When β€œborrowing” a method from `Array` or `Object`, it's clearer to get it from the prototype than from an instance. ## Examples ```js // ❌ const array = [].slice.apply(bar); // βœ… const array = Array.prototype.slice.apply(bar); ``` ```js // ❌ const type = {}.toString.call(foo); // ❌ const type = globalThis.toString.call(foo); // βœ… const type = Object.prototype.toString.call(foo); ``` ```js // ❌ Reflect.apply([].forEach, arrayLike, [callback]); // βœ… Reflect.apply(Array.prototype.forEach, arrayLike, [callback]); ``` ```js // βœ… const maxValue = Math.max.apply(Math, numbers); ```