簡體   English   中英

擴展JavaScript庫的最佳方法?

[英]Best Way to Extend a JavaScript Library?

我在使用Python很長一段時間后回到JavaScript,所以我忘記了一些Javascript最佳實踐。

我想使用預定義的數據結構,例如bucket-js提供的數據結構。 但是,我注意到bucket-js沒有為其對象提供太多的toString()方法; 所以我想提供自己的方法。

擴展此類型的庫對象的最佳方法是什么,以便擴展在整個項目中可用,但不涉及更改庫源代碼?

瀏覽器

如果您的目標環境是瀏覽器,那么只需將擴展庫對象的代碼放在代碼的其余部分之上

例:

<script src="bucket-js"></script>
<script>
        buckets.Set.prototype.toString = function() {
            //...
        }

        // Rest of your code
</script>

Node.js的

如果您的目標是Node.js,或瀏覽器通過類似於基於模塊的組織使用的Browserify ,那么一種方法是創建自己的修補模塊,修補庫對象然后將其傳回。 然后,您需要此模塊而不是香草模塊。

更多信息: 在Node.js中修補猴子

例:

myPatchedBucketJS / index.js

var bucket = require('bucket-js');

buckets.Set.prototype.toString = function() {
    //...
}

module.exports = bucket;

main.js

var bucket = require('myPatchedBucketJS');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM