html のエンコードとデコードがブラウザーと jQuery でどのように機能するかを理解しようとしています。$('<div/>').text(myString)
関数が < と > およびその他のいくつかの文字を適切な html エンティティにエンコードすることを理解しています。したがって
"<a>" =>"&le,a>"
しかし、次のように text() に別の呼び出しを適用するとどうなるでしょうか。
$('<div/>').text(myString).text()
これとは対照的に、これは文字列をもう一度デコードするようです:
$('<div/>').text(myString).html()
何故ですか?text() の 2 回目の呼び出しで html エンコーディングが破壊されるのはなぜですか? おそらく、どのコンテキストがどのようにエスケープされているかについての私のメンタル モデルは間違っています。ありがとうございました。