Javascript myVar={}做什么?

Javascript myVar={}做什么?,javascript,Javascript,我不懂第一行;这条线是干什么的 phonebookEntry = {}; phonebookEntry.name = 'Oxnard Montalvo'; phonebookEntry.number = '(555) 555-5555'; phonebookEntry.phone = function() { console.log('Calling ' + this.name + ' at ' + this.number + '...'); }; phonebookEntry.phon

我不懂第一行;这条线是干什么的

phonebookEntry = {};

phonebookEntry.name = 'Oxnard Montalvo';
phonebookEntry.number = '(555) 555-5555';
phonebookEntry.phone = function() {
  console.log('Calling ' + this.name + ' at ' + this.number + '...');
};

phonebookEntry.phone();

phonebookEntry={}是一个空对象,没有任何属性

实际上,这相当于这个
phonebookEntry=newobject()

您可以通过以下简单方式验证这一点:

typeof(phonebookEntry)
它将输出
“对象”

JavaScript
中,我们能够创建如上所述的空对象,并在以后附加对我们有意义的任何属性,如下所示:

phonebookEntry.name = 'Oxnard Montalvo';
或同等地

phonebookEntry["name"] = 'Oxnard Montalvo';
此外,后者称为括号表示法

如中所述,您将在其中找到有关此主题的更全面和详细的方法:

JavaScript是基于简单的基于对象的范例设计的。一个物体是 属性的集合,而属性是 名称和值。属性的值可以是函数,在这种情况下 该属性称为方法。除了 在浏览器中预定义,您可以定义自己的对象。这 第章介绍如何使用对象、属性、函数和 方法,以及如何创建自己的对象


在上面的代码中,我们定义了属性
name
,带有键
name
和值'Oxnard Montalvo'。

This
phonebookEntry={}是一个空对象,没有任何属性

实际上,这相当于这个
phonebookEntry=newobject()

您可以通过以下简单方式验证这一点:

typeof(phonebookEntry)
它将输出
“对象”

JavaScript
中,我们能够创建如上所述的空对象,并在以后附加对我们有意义的任何属性,如下所示:

phonebookEntry.name = 'Oxnard Montalvo';
或同等地

phonebookEntry["name"] = 'Oxnard Montalvo';
此外,后者称为括号表示法

如中所述,您将在其中找到有关此主题的更全面和详细的方法:

JavaScript是基于简单的基于对象的范例设计的。一个物体是 属性的集合,而属性是 名称和值。属性的值可以是函数,在这种情况下 该属性称为方法。除了 在浏览器中预定义,您可以定义自己的对象。这 第章介绍如何使用对象、属性、函数和 方法,以及如何创建自己的对象


在上面的代码中,我们定义了属性
name
,带有键
name
和值'Oxnard Montalvo'。

此行创建了一个新的空对象,没有属性

phonebookEntry = {};
没有它,你就无法做到这一点:

phonebookEntry.name = 'Oxnard Montalvo';
phonebookEntry.number = '(555) 555-5555';
在javascript中,还有另一种声明等效对象的方法:

phonebookEntry = {
    name : 'Oxnard Montalvo',
    number : '(555) 555-5555',
    phone : function() {
      console.log('Calling ' + this.name + ' at ' + this.number + '...');
    }
};

phonebookEntry.phone();

参考:

此行创建了一个新的空对象,没有属性

phonebookEntry = {};
没有它,你就无法做到这一点:

phonebookEntry.name = 'Oxnard Montalvo';
phonebookEntry.number = '(555) 555-5555';
在javascript中,还有另一种声明等效对象的方法:

phonebookEntry = {
    name : 'Oxnard Montalvo',
    number : '(555) 555-5555',
    phone : function() {
      console.log('Calling ' + this.name + ' at ' + this.number + '...');
    }
};

phonebookEntry.phone();

参考资料:

这将是标准方法,并将澄清您的更多概念

function PhonebookEntry(name, number){
var privateName = name;
var privateNumber = number;
this.phone = function() {
  console.log('Calling ' + privateName + ' at ' + privateNumber + '...');
};
};
phonebookEntry = new PhonebookEntry('Oxnard Montalvo', '(555) 555-5555');
phonebookEntry.phone();
phonebookEntry1 = new PhonebookEntry('Montalvo', '(222) 222-2222');
phonebookEntry1.phone();

这将是标准的方法,并将澄清您的更多概念

function PhonebookEntry(name, number){
var privateName = name;
var privateNumber = number;
this.phone = function() {
  console.log('Calling ' + privateName + ' at ' + privateNumber + '...');
};
};
phonebookEntry = new PhonebookEntry('Oxnard Montalvo', '(555) 555-5555');
phonebookEntry.phone();
phonebookEntry1 = new PhonebookEntry('Montalvo', '(222) 222-2222');
phonebookEntry1.phone();

指定
phonebookEntry
为对象,以便为其附加属性。在JavaScript表达式中,
{}
只是创建一个新的空对象。它指定
phonebookEntry
是一个对象,以便为其附加属性。在JavaScript表达式中,
{}
只是创建了一个新的空对象。。。但是codecademy说SyntaxError:Unexpected token@SantiagoHernández现在对我有效了。。。。也许codecademy只是有点小问题-_-嘿,我试过了。。。但是codecademy说SyntaxError:Unexpected token@SantiagoHernández现在对我有效了。。。。也许codecademy只是有点小问题-_-
this.name
this.number
在构造的对象上不存在(因为
var
this
不同)使用新编辑,您现在根本不需要
var
行,因为您可以访问用作函数参数的标识符:)不,这只是一个示例,但理想情况下,会有一个setter函数,将参数分配给可能具有一些数据验证的私有变量。
this.name
this.number
在构造的对象上不存在(因为
var
this
不同)使用新的编辑,您现在根本不需要
var
行,因为您可以访问用作函数参数的标识符:)不,这只是一个示例,但理想情况下,将有setter函数将参数分配给可能具有一些数据验证的私有变量。