問題タブ [revealing-module-pattern]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
252 参照

javascript - モジュールのパターンとスコープを明らかにする

実行していた JavaScript で問題が発生し、以下のコードに分割しました。が呼び出された_localVar後に変数が変更されない理由について混乱しています。init()RevealingModule で参照this._localVarすると、期待どおりの結果が得られることがわかりました。範囲で迷っています。誰かがなぜこれが起こっているのかを明確にしてください。を使わなければthis、次のスコープはモジュールになると思っていましたが、そうではないと思います。

0 投票する
3 に答える
15739 参照

javascript - JavaScriptデザインパターン:モジュールパターンと明らかにモジュールパターンの違い?

最近、 Learning JavaScript Design Patternsという本を読んでいます。私が得られないのは、モジュールパターンと明らかにモジュールパターンの違いです。それらは同じものだと感じています。誰でも例を挙げることができますか?

0 投票する
2 に答える
35 参照

javascript - この関数定義の振る舞いを理解しようとしている

この質問にタイトルを付ける方法がわかりませんでしたが、コンストラクターで明らかにするモジュールパターンを使用していて、混乱する動作に気付きました。このコードの実際の目的は、私の質問とは無関係です。私が見たこの動作を理解したいだけです。

問題があったコードは次のとおりです。

今それを呼んでいます:

これを行うと、 setAjaxQuery 関数のすべての console.dir() コマンドで undefined が表示されました。

問題は、パラメーター名がローカル変数と同じであることがわかりました。次のようなことをして問題を解決しました。

私の質問は、なぜこれが起こるのですか?名前が同じ場合、この問題を引き起こすjavascriptの動作は何ですか?

0 投票する
1 に答える
2075 参照

javascript - モジュール・プロトタイプパターンの公開

今までは、Revealing Module パターンを使用して、次のように Javascript を構築していました。

フィドル

このコードは期待どおりに動作しますが、このパターンは複数のインスタンスがある場合に大量のメモリを使用し、他のパターンに比べて速度に問題があるという記事を最近読みました。私はこのパターンでの作業を楽しんでいるので、これらすべての「問題」のない類似のパターンを検索し、Revealing Prototype パターンに出会いました。私の知る限り、JavaScript の Prototype はメモリ管理がはるかに優れています。

Revealing Prototype Pattern を使用する方がメモリにとってより高速/より良いかどうか疑問に思っていますか? このベンチマークは私を驚かせました。モジュール パターンの方がはるかに高速に見えるからです。何か理由はありますか?

また、Revealing Prototype パターンを使用して複数のインスタンスを作成する方法がわかりませんでした (上記の Revealing Module Pattern Fiddle と比較してください)。

フィドル 2

私は何を間違っていますか?

0 投票する
1 に答える
363 参照

javascript - モジュールパターンを明らかにするJavaスクリプトは変数にアクセスできません

JavaScript で Revealing Module パターンを実装していますが、別のスクリプトで宣言された変数にアクセスするのが困難です。以下は私のコードです。

スクリプト 1:

スクリプト 2:

HTML では、スクリプト 2 の前にスクリプト 1 を追加したので、スクリプト 2 で SomeEventHandler にアクセスする方法を知りたいと思いました。

0 投票する
1 に答える
52 参照

javascript - プライベートからモジュールのパブリック メソッドにアクセスするにはどうすればよいですか?

私はこの本当に厄介な問題を抱えています。プライベート モジュール パターン内からパブリック モジュール関数にアクセスできるようにする必要があります。問題のある行にコメントを書きました...これを行う方法はありますか?