5
Ben Sonra geri 'undefined'
olsun ReplDüğümde "statik yöntemler" ile Nesne, İşlev, Tarih vb. Ekleyebilir miyim?
require("./augs");
typeof Object.foo
yazın
Object.foo = "bar";
içeren bir node.js modülü "augs" oluşturursanız.
Biz son kullanıcı ve arka uç arasında bazı kod paylaşmaya çalışıyoruzObject
eklenen kolaylık yöntemleri
Function
,
Date
vs. dayanır web uygulamasında kod önemli miktarda var ama Düğüm gibi görünüyor Bu yapıcı işlevlerini sıfırlar veya bir şekilde, belirli bir modüldeki değişikliklerin başka modüllere sızmasını önler. Bu oldukça akıllı ve koruma düzeyini takdir ederken, "Ne yaptığımı biliyorum, lütfen bana
Object
'u büyütmeme izin verin" diyebileceğimiz bir yol var mı? Böyle
exports.augment = function(o) {
o.foo = "bar";
}
güçlendirmek Object
: augs.js
varsayarsak
Evet, sanırım bu işe yarar; Ne kadar berbat olsa da, (oldukça büyük) augs.js'i bir dışa aktarma modülüne dönüştürmek zorunda kalırdım. Ayrıca bir modülden 'Nesnenin 'başka bir modülden' == '' Nesne olmadığını işaret ettiğin için teşekkür ederim. – Domenic
@lwburk Farklı modüllerdeki farklı nesneler hakkında ayrıntılı bilgi verebilir misiniz? –
@Peter - Basitçe söylemek gerekirse, bir modüldeki yerliler bu modülü yükleyen senaryodakilerle aynı yerliler değildir. Ayrıca: "Şu anda Modüller 1.1'den itibaren bir ortamın Modüllerde yerel sınıfları nasıl uygulayacağını seçme biçimi" tanımsız "dır. Bu, her bir ortam uygulamasının nasıl çalışması gerektiğine karar vermesi anlamına gelir." http://wiki.commonjs.org/wiki/Modules/Natives –