Skip to content Skip to sidebar Skip to footer

Syntax For Object Methods

I have always defined methods in objects like this: { a: function(par1, par2) { }, } But recently I see this (which I assume is equivalent, but I am not sure): { a(par1, par2)

Solution 1:

What you're referring to is part of the ES6 Extended Object Literal support.

You are correct in assuming that your two examples are functionally equivalent.

Solution 2:

It is ES6 syntax, a shorthand and functionally the same.

MDN - Method definitions

Solution 3:

Yep, this is new ES6 way of doing it

old way

var obj = {
  foo: function() {},
  bar: function() {}
};

new way

usually you can use old syntax, new one is optional but bit shorter

var obj = {
  foo() {},
  bar() {}
};

it better to skip duplication when you do something like that

function method(){};

return {
   method: method
}; 

it may looks like

return {
   method
}; 

same syntax you may find at es6 class definition

classMyClass {
  constructor(geometry, materials) {}
  update(camera) {}

  getboneCount() {}
  setmatrixType(matrixType) {}
}

Best regards

Egor

Post a Comment for "Syntax For Object Methods"