4

次のようなサーバーからの出力があります

["alex", "\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd"]

js や jquery を使って ["alex", "to its right language"] のように変換したい

私は試した

function encode_utf8( s )
{
   return unescape( encodeURIComponent( s ) )
}

しかし、正しく動作していません

助けはありますか?
前もって感謝します

4

1 に答える 1

1

示されている例のように出力を「LIKE」にすることの意味がわかりません...

しかし、それを取得して次["alex", "\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd"]のような変数に割り当てると

var foo = ["alex", "\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd"];
// alert(foo[1]) results in "��������" which actually means
// the engine has at least tried to resolve the characters

たとえば、次のような正しい文字コードを渡す場合:

var foo = ["alex", "\u003cp\u003emy UTF paragraph\u003c/p\u003e"];
// alert(foo[1]) results in "<p>my UTF paragraph</p>" which seems correct to me...

上記の例をブラウザ コンソールで試してください (少なくとも現在の Chrome では動作します)。

一方、"\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd\ufffd"毎回受信する場合は、コメント投稿者と同様に、JavaScript で処理する前に応答がめちゃくちゃになっていると思います。

この記事は、Unicode 文字の使用が変数の命名に有効であることをうまく示しているため、文字列コンテンツにも同じことが適用されます。

于 2012-06-21T18:10:19.687 に答える