我有一個JavaScript類(使用John Resig's approach),我創建的一個實例,並傳遞一個args
對象,像這樣:在JavaScript中,如果它們不存在,我該如何自動將屬性設置爲null?
var myCucumber = new Cucumber({
size: 'small'
organic: true
})
在類本身,它引用了args
對象的許多屬性。然而,這些屬性都不是強制性的,所以有時可能會有一些缺失的屬性,這會導致「屬性未定義」錯誤。
爲了解決這個問題,我做了以下內容:
args.size = args.size || null;
args.organic = args.organic || false;
args.colour = args.colour || null;
args.origin = args.origin || null;
這似乎有點討厭不得不爲可能會在整個類中使用的每個屬性做到這一點。
如果在創建類的實例時沒有傳入任何args的屬性將會是null
,是否有一種簡潔的方法?
無論你正在使用它,不能你剛纔檢查'undefined'代替,或兩者兼而有之,或這裏有一個瘋狂的想法,只是檢查什麼falsy? – adeneo
如果你確實想要使用這些屬性,只需在它的構造函數中用一些初始值(或者甚至是null)初始化它們即可。 –