JSで独自の名前空間を作成するためのいくつかのアプローチを見てきましたが、少し混乱します。
私たちはJQueryを利用しており、最近関わった1つのプロジェクトで、開発者がこのアプローチを使用していることに気づきました。
var myObject = new function ($){
var localVar = 1,
init = function(){
...
},
return {
init: init
}
}
- 'new'関数を使用する理由
- なぜこの新しい関数に$を渡すのですか?
- なぜこの形の返品ですか?
別のプロジェクトでは、次のアプローチを使用しました。
$.companyName = {
textNotFound: "The search returned no results",
search: {
orders: null,
stock: null
}
}
$.companyName.search.orders = function(param1,...){
...
}
$.companyName.search.stock = function(param1,...){
...
}
使用シナリオは次のようになります。
var orders = $.companyName.search.orders(...);
if (orders == null){
alert($.companyName.textNotFound);
}
else{
...
}
この2番目の方法はお勧めできません。代わりに、最初の方法を使用する必要がありますか?または、JQueryプラグインを作成する必要がありますか?(これはサイト固有の機能であるため、私はそうは思いません)
ありがとう、
ジャック