这个属性和带冒号的属性之间的区别



我正在制作一个 LinkedList 类:

function LinkedList(){
           ...
两者

之间有什么区别:

this.addNode = function(data){
           ...

addNode: function(data){
           ...

这会在对象上创建一个属性(假设this引用一个对象)

this.addNode = function(data) { ...

这是一个赋值表达式,如果它本身就是一个语句。

另一方面,这是对象文字表达式的一部分:

addNode: function(data) { ...

它只在对象文本中有意义,如下所示:

var someObject = {
  property1: value1,
  property2: value2,
  // ...
};

从更大的意义上说,比较两者没有多大意义;在某种程度上,它们是做同一件事的两种不同方式,但它们在不相交的环境中是有意义的。第一种方法是在现有对象上添加或重置属性,而第二种是在创建新对象的过程中设置属性的方法。

最新更新