Ext.js 中 Function能在定义时就能执行的方法的写法 function(){...}()
- /**
- * 第二部分Function:能在定义时就能执行的方法的写法 function(){...}(); //注意 红色 括号,即 Function定义之后,价格括号既可以定义之后就执行了
- */
- /**
- * 一、普通的方法的定义与执行
- */
- // 1-1、普通的方法定义,不带返回值的情况
- fun = function() {
- alert("执行");
- };
- // 1-2、普通的方法执行,不带返回值的情况
- // fun();// 输出结果:执行
- // 2-1、普通的方法定义,带返回值,且返回值是个字符串的情况
- fun = function() {
- alert("执行");
- return "返回的是字符串";
- }
- // 2-2、普通的方法执行,带返回值,且返回值是个字符串的情况
- // fun();// 输出结果:执行
- // 2-3、普通的方法执行,带返回值,且返回值是个字符串的情况,并将返回值输出
- // alert(fun());// 输出结果:执行,返回的是字符串,(分别是两次警告框形式出现),原因是,先执行fun(),然后会带回返回的字符串,再通过alert输出
- // alert(typeof fun());// 输出结果:执行,string
- // 3-1、普通的方法定义,带返回值,且返回值是个object的情况
- fun = function() {
- alert("执行");
- return new Date();
- }
- // 3-2、普通的方法执行,带返回值,且返回值是个object的情况
- // fun();// 输出结果:执行
- // 3-3、普通的方法执行,带返回值,且返回值是个object的情况,并将返回值输出
- // alert(fun());// 输出结果:执行,Wed May 14 16:25:32 UTC+0800 2008
- // 3-4、普通的方法执行,带返回值,且返回值是个object的情况,并将返回值类型输出
- // alert(typeof fun());// 输出结果:执行,object
- // 4-1、普通的方法执行,带返回值,且返回值是个function的情况
- fun = function() {
- alert("执行");
- return function() {
- alert("返回类型是个方法");
- };
- }
- // 4-2、普通的方法执行,带返回值,且返回值是个function的情况
- // fun();// 输出结果:执行
- // 4-3、因为fun()执行后返回的是个function,所以根据这个返回的function的参数情况(比如参数的个数和类型)再执行一次返回的function,
- // 因为此处这个返回的function是不需要参数的,所以就可以直接用()来执行
- // fun()();// 输出结果:执行,返回类型是个方法
- // 3-4、普通的方法执行,带返回值,且返回值是个object的情况,并将返回值类型输出
- // alert(typeof fun());// 输出结果:执行,function
- /**
- * 定义时就能执行
- */
- fun = function(){
- alert("执行");
- }();
- //alert(fun);
- fun = function(){
- alert("执行");
- return "返回的是字符串";// 返回的是个字符串
- }();
- //alert(fun)
- fun = function(){
- alert("执行");
- return new Date();// 返回的是个object
- }();
- alert(fun);
- fun = function(){
- alert("执行");
- return function(){
- alert("返回类型是个方法");
- }// 返回的是个方法
- }();
- fun();
原文链接:http://yahaitt.iteye.com/blog/193054