2016-08-14 8 views
1

私はFirefoxのアドオンで、ユーザーが選択した温度を変換するように取り組んでいます。基本的には、ユーザーの選択の各文字をループし、if文を使用して数値、負または小数のいずれであるかを判断します。度記号を見つけたら、プログラムが文字をループするのをやめ、ユーザー選択から引っ張った番号を保存します。文字列がユニコード文字と等しいかどうかを確認するにはどうすればよいですか?

ただし、度記号はユニコード文字なので、if文は度記号を検出せず、文をfalseに評価します。私は他のフェイルセーフを用意しているので、無限ループではありません。

私の声明はif (str.charAt(#) == "°")ですが、評価されません。私のテストHTMLファイルは、貼り付けたばかりの°ユニコードと、°コードの両方を使用しています。どちらも、この声明を真実とみなしません。

どうすればこの問題を解決できますか?

+1

http://stackoverflow.com/q/31325410/6309が役立つだろうか? – VonC

+0

文字列のパターンマッチングに正規表現を使用できます。 "RegExp"を検索する – 4castle

答えて

0

私のために正常に動作するようです:

var str = document.getElementById('thing').innerText; 
 
console.log(str.charAt(0) === "°");
<span id="thing">&deg;</span>

+0

これは私の目的では機能しませんが、テストページに直接コードを適用しようとしましたが、そこでは機能しましたが、何らかの理由でFirefox拡張ファイルのコードが真と評価されません。奇妙な。私は他のアモ人と連絡を取り、私たちがそれを理解できるかどうかを見なければならないでしょう。 –

関連する問題