1

この問題は、CoffeScript と JavaScript に共通していると思います。私の CoffeeScript スクリプトでは606.0、websocket のような番号を受け取ります。したがって、ホストから到着した JSON から抽出された文字列として提供されます。今、私はこの番号を操作したいと思います。たとえば、次のように何かを追加します。

# @x is the number presented as a string
@xx = @x + 100
console.log("res=" + @xx)

そして私が得るものは次のとおりです:

res=606.0100

したがって、文字列として追加されます! そして、コードを少し変更すると、100 が float であると「言って」:

# @x is the number presented as a string
@xx = @x + 100.0
console.log("res=" + @xx)

結果はまだ同じです。

私の質問は、これが文字列ではなく数値であることを CoffeScript/JavaScript に説明するにはどうすればよいですか?

4

1 に答える 1

2

文字列から数値をキャストするには、前に+:

n = '100'
alert n + 1 # 1001
alert +n + 1 # 101

http://jsfiddle.net/elclanrs/d77uq/

于 2012-07-21T07:26:24.783 に答える