このような詳細は、ドキュメントで常に利用できるとは限りません。ソースを読む必要があります。覗いてみたところ、(2014 年 11 月 24 日現在) どちらも非常によく似た方法で動作しているようです。どちらも、必要に応じて値を変更するために単一のディレクティブがインスタンス化されます (カーリー補間ディレクティブはその場で生成されます)。
両方のディレクティブは、関連する式$digest
をすべて他のものと同様に評価します。主な違いは、ng-bind は値に対してそれ以上の処理を行いませんが、カーリーを使用すると、補間されたテキスト全体がダイジェストごとに再計算されることです。基本的に、文字列は and を使用して構築され$interpolate
、それが前の値と比較されます (これは の内部で発生します$digest
)。値 (単純な値ng-bind
またはカーリーを使用した補間結果) が変更されていない場合、どちらの方法でも DOM は更新されません。
私にとって、その質問に対する受け入れられた回答は、使用するより説得力のある理由ng-bind
です。つまり、ng-cloak などのハックに頼ることなく、Angular がそれらをロードしてコンパイルする前に、テンプレート タグの目に見えるフラッシュを防ぐために使用できます。
変数によっては、カーリー補間の方が実際にはパフォーマンスが高い場合もあります。私が考えることができる状況の 1 つは、補間の代わりに ng-bind を使用すると、そうでなければ冗長な<span>
要素を多数作成する必要があり、それによってスケールが逆方向に傾く場合です。また、インスタンスごとに 1 つのウォッチャーを作成する ng-bind とは対照的に、補間式を使用すると、使用する変数の数に関係なく、文字列全体に対して単一のウォッチャーが作成されます。
ただし、いつものように、早い段階でパフォーマンスを最適化しないでください。最適化する場合は、プロファイルを作成して、本当に重要な部分を見つけてください。