我已经创建了一个 节点模块,其中包含一些自定义的数组和字符串方法。
首先,我像使用常规模块一样使用它,并从 require
中获取函数,如下所示:
备选方案 1.
const invSlice = require('inverted-slice');
let arr1 = [1,2,3,4];
invSlice.iSlice(arr, start, stop);
这段代码是有效的,但更好的做法是将iSlice作为
Array
对象的一个方法来调用。我通过在我的库中添加以下代码来解决这个问题:Array.prototype.iSlice = iSliceBuiltin; // iSliceBuiltin is my function
现在可以像这样使用该方法:
替代方案2。
require('inverted-slice');
let arr1 = [1,2,3,4];
arr1.iSlice(start, stop);
我认为这比Alt 1更好看。
问题
我的问题是,当像Alt 2中那样向内置对象(如Array
或String
)添加自定义方法时,是否有任何最佳实践或指南可遵循?