promiseを保持するJavaScript変数の命名規則があると便利だと思います。プログラミング言語の標準を超えた命名規則は一般的に好きではありませんが、約束が関数の引数として渡されるプログラミングのスタイルでは、変数が約束を保持しているか「本物」を保持しているかを一目で見分けるのが難しい場合があります。
私はpromiseOfFoo
とpFoo
を個人的に使用しましたが、前者は少し冗長で、後者はハンガリー語からのフラッシュバックを提供します。
一般的に使用される規則はありますか?
これは、それらをどのように使用するかによりますね。
コードが次のようになっている場合:
var imageLoading = loadImage(url); // returns promise
imageLoading.done(showImage);
// imageLoading.done
// imageLoading.error
// imageLoading.then
// imageLoading.success
// imageLoading.fail
// ... whatever your library supports
次に、約束に現在時制の動詞のような名前を付けることをお勧めします...
しかし、遅延オブジェクトに依存するライブラリを構築している場合
// accepts a promise
var showImage = function (promise) {
promise.done(function (img) { /* ...... */ });
};
次に、どのメソッドがプロミスを取るか、どのメソッドがプロミスしないかについての理解がある限り、変数を名詞として命名することに特に問題はありません。
var image = loadImage(url); // returns promise
showImage(image); // acts on promise
これで、インターフェースは本当にクリーンになり、100%手続き型に見えるコードを記述できます。 ... buuuut、どの関数/メソッドがプロミスを使用し、どれがオブジェクトを使用するかを知る必要があります。
オブジェクトメソッド内でコールバックとしてpromiseを渡す場合は、promise
またはtweetLoading
またはdataParsing
など、その特定の状況のコンテキスト内で意味のある名前を付けることができます。 。
showImage
の定義について、私が選択したパラメーターはpromise
と呼ばれるフラットアウトです。そのため、その関数で作業を行っている場合、または一連の内容をデバッグする必要がある場合は、あなたがそれを見た秒がそれがpromiseオブジェクトをとることを見ることができました。
私はパブリックコンベンションを知りませんが、自分のコードで以下を使用しました:
var dfrd
:据え置きオブジェクト(同じスコープで2つ以上必要だったことを思い出したことはありません)var p
: 約束var p_foo
:いくつかの名前付き約束の1つvar promises
:Promiseを含む配列またはプレーンオブジェクト例外はjqXHR
オブジェクトです。このオブジェクトをvar jqXHR
(繰り返しますが、同じスコープで2つ以上必要だったことを思い出しません)。