0

Backbone の学習を始めたばかりで、モデルに問題があります。オブジェクトを作成しましたが、作成したオブジェクトから属性を取得しようとすると、コンソールから得られるものは定義されていません。理由を教えてください。

Person = Backbone.Model.extend({

defaults: {

    name: 'Fetus',

    age: 0,

    child: ''

},

initialize: function() {

    alert("Welcome to this world");

}

  });

これはコンソールからのものです:

var person = new Person({ name: "tom", age: 15, child: "jerry" });
undefined 

var name = person.get("name");
undefined

ここに「トム」という名前がないのはなぜですか???

ありがとう

4

2 に答える 2

1

これはコンソール出力の単なる誤解だと思います。コンソールに次のように入力します。

var name = person.get("name");

また、名前変数の値をコンソール出力として表示するつもりですが、変数を宣言した後のコンソール出力は変数値ではないため、次のようにすることができます。

person.get("name");

また

var name = person.get("name");
name //outputs the value of name variable in your console

をコンソールに表示すると、コードが正常に動作することがわかります。;)

于 2013-11-10T08:47:41.417 に答える
0

コードをフィドルにロードすると、実際に機能します。これは競合状態の問題ではなく、使用する前に Person を作成するコードが実行されていますか?

于 2013-11-09T18:03:13.830 に答える