Javascript の中国語文字列処理に関する追加の考慮事項_JavaScript のヒント

WBOY
リリース: 2016-05-16 18:41:38
オリジナル
995 人が閲覧しました

var strSex=" Male";

GB2312 エンコーディングでは、ActiveX コントロールから読み取られた BSTR 値である別の変数 strAxSex があり、この時点でも元の値が " Male" であると仮定します。 JavaScript プログラムの Compare: strSex==strAxSex は false、つまり "male"!="male" です。

しかし、VS2005 のデバッグで strSex==strAxSex という式を見ると、それは真実であり、よく見ると、strSex.charCodeAt(0) と strAxSex.charCodeAt(0) も等しく、strSex です。 charCodeAt(0) は strAxSex と等しく、charCodeAt(0) は NaN とも等しくなります。

vs2005 変数値プロンプトをもう一度見てください。strSex="□□" であることがわかります。文字定数が非 Unicode であるため、strSex に割り当てられた値が「male」の Unicode 値と異なることが判明しました。 js ファイルをエンコード utf-8 で保存して再実行してみると、最終的に strSex==strAxSex が true になり、プログラムの実行はデバッガーと一致し、日常のロジックと一致します。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート