1
<script>
var num = new Number(43);
console.log(num);
</script>

ここのチュートリアルによると: http://www.w3schools.com/jsref/jsref_obj_number.asp

Syntax
var num = new Number(value);
Note: If the value parameter cannot be converted into a number, it returns NaN (Not-a-Number).

質問:

firebug->console では、次のように表示Number {}Number {43}new Number(value)ます。常に表示されます:ではNumber {}、使用する目的は何new Number(value)ですか?それはどのように機能しますか?ところで、私はオンラインでグーグル検索しましたが、良い説明が見つかりませんでした.

4

2 に答える 2

1

Number(43)は数値プリミティブですがnew Number(43)、その数値プリミティブからオブジェクトを作成します。表示Number {}は、Chrome コンソールがそのようなオブジェクトを表示する方法です。

new Number(43)それでも数値のように「動作」します。コンソールで:

var num = new Number(43); // Number {}
num == 43 // true
num + 5 // 48
num === 43 // false, since the types don't match.

仕組みの詳細については、 JavaScript で new 演算子がどのように機能しますかnew? . 数値プリミティブだけが必要な場合は、使用しないでください。new

于 2013-06-17T03:15:59.923 に答える
0

数値プリミティブと数値オブジェクトには違いがあります。キーワードを使用するとnew、表示される新しい数値オブジェクトが作成されます。valueOfプリミティブを返す で数値オブジェクトの値を取得できます。

> var n = new Number(42);
> n.valueOf()
42
于 2013-06-17T03:11:56.250 に答える