1

例えば、

var name = [1,2,3]  // name === "1,2,3"
name = {"a":"b"}  // name === "[object Object]"

私はこの状況を理解していません。

javascriptの「name」または「window.name」のIDは何ですか?

追加:

Chromeの開発ツールを使用しました

4

1 に答える 1

2

あなたが宣言するとき

name = {"a":"b"}

オブジェクトを作成していて、オブジェクトの文字列表現はです[object Object]。つまり、オブジェクトを文字列に変換しようとすると(おそらくここに当てはまります)、その結果が得られます。

それは真実でname === "[object Object]"ないことに注意してください。

alert( name === "[object Object]" );             // alerts "false"
alert( name.toString() === "[object Object]" );  // alerts "true"

同じことがアレイにも当てはまります。1,2,3配列の単なる文字列表現です[1,2,3]


についてwindow.nameは、現在のウィンドウの名前が付いているため、文字列以外に変更すると、予期しない動作が発生する可能性があります:https ://developer.mozilla.org/en/DOM/window.name

于 2012-07-21T10:51:20.760 に答える