0

図のようにコードを記述しました。グローバル変数に値を割り当てていたため、それ以上のコード実行が中断されました。

resultCollectionはグローバル変数です。また、私のプログラムは厳密モードで実行されています。

"use strict";
var View = Backbone.View.extend({
     initialize : function(options){
         this.el = options.el;
         resultCollection = options.resultCollection;
         console.log('resultCollection',resultCollection);
         this.render();
     }  

console.logは出力されず、実行は停止せず、グローバル変数に値が割り当てられたときに一時停止または実行を継続します。

なぜこれが起こったのですか?誰かが私にいくつかの洞察を与えることができますか?

4

1 に答える 1

0

厳密モードでは、コンソールにエラーが表示されるはずです。

したがって、変数名の先頭に追加するwindow.と機能します。

PS: http://jsfiddle.net/zerkms/6M3HM/を参照してください。

コンソールではが表示されますがUncaught ReferenceError: b is not defined、グローバルaは適切に定義されています。

于 2012-12-17T10:10:02.987 に答える