0

ここで最も重要なことは、変数を設定できないことです。その場で行う必要があります。

緯度の扱い。緯度としましょう。この場合、緯度が 123.4567 だとしましょう

lat.toFixed(2).parseFloat();

TypeError: Object 123.35 has no method 'parseFloat'

これについて最善の方法はありますか?

4

1 に答える 1

5

toFixedのメソッドでNumberあり、文字列を返します。window.parseFloatはグローバル関数であり、 のメソッドではありStringませんが、どうしても必要な場合は、Stringメソッドにすることができます。それ以外の場合は、単に関数として使用します。この場合、単項プラス演算子を使用することもできます。

(ネイティブ オブジェクトの拡張については、ここでは説明しませんが、多くの議論があります。調査を行って、自分で判断してください。)

Javascript

if (!String.prototype.parseFloat) {
    String.prototype.parseFloat = function () {
        return parseFloat(this);
    }
}

var lat = 123.456789;

console.log(parseFloat(lat.toFixed(2)));
console.log(lat.toFixed(2).parseFloat());
console.log(+lat.toFixed(2));

出力

123.46
123.46 
123.46 

jsfiddleについて

于 2013-06-19T18:52:36.767 に答える