6 ways to define javascript function

來源:互聯網
上載者:User

There are six ways/contexts in which to create functions:

1) Standard declarative notation (most familiar to people with C background)

function foo(){}

All the rest are function expressions:

2) As a method of an object literal

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

3) As a method of an instantiated object (created each time new is exectued)

varObj=function(){this.foo =function(){};};

4) As a method of a prototype (created only once, regardless of how many times new is executed)

varObj=function(){};Obj.prototype.foo =function(){};

5) As an anonymous function with a reference (same effect as #1) *

var foo =function(){};

6) As an immediately executed anonymous function (completely anonymous)

(function(){})();

* When I look at this statement, I consider the result. As such, I don't really consider these as anonymous, because a reference is immediately created to the function and is therefore no longer anonymous. But it's all the same to most people.

 

 

see also :

http://stackoverflow.com/questions/1866084/javascript-function-declaration

http://shichuan.github.com/javascript-patterns/

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.