js function定义函数使用心得

js function定义函数使用心得,了解这个才能更进一步的了解js面向对象方面的知识。

1.最基本的作为一个本本分分的函数声明使用。 

代码如下:

function func(){} 
或 
var func=function(){}; 

2.作为一个类构造器使用:

代码如下:

function class(){} 
class.prototype={}; 
var item=new class(); 
3.作为闭包使用: 
代码如下:

(function(){ 
//独立作用域 
})(); 

4.可以作为选择器使用: 
代码如下:

var addEvent=new function(){ 
if(!-[1,]) return function(elem,type,func){attachEvent(elem,'on'+type,func);}; 
else return function(elem,type,func){addEventListener(elem,type,func,false);} 
};//避免了重复判断 

5.以上四中情况的混合应用: 
代码如下:

var class="new" function(){ 
var privateArg;//静态私有变量 
function privateMethod=function(){};//静态私有方法 
return function(){/*真正的构造器*/};}; 

6.利用Function处理ajax返回的js脚本: 
代码如下:

var ajax_js_code= 
"{a:'a','b':'b','func':function(){alert('abc')}}"; 
//假设此为服务器返回responseText 
ajax_js_code= 
"return "+ajax_js_code; 
//重构代码主体,根据需要可以有不同重构方法 
var ajax_exec=new Function(ajax_js_code); 
var result=ajax_exec(); 
alert(result.a+":"+result.b); 
result.func(); 

这种构建函数方式:var func=new Function(args1,args2,args3,...,body) args:参数(任意多个); body:函数主体 
如:var func=new Function("arg1","arg2","alert(arg1+':'+arg2)"); func("ooo","ppp"); 
应注意的是,注意返回代码的格式,根据处理原理返回形式可有一下几种: 
代码如下:

1.(function(){//代码})() 
2.{a:"abc",func:function){}}//散列表 
3.function(){} 

以上三种应该能处理大部分代码了。
posted @ 2016-05-09 19:30  每天早上被自己帅醒  阅读(163)  评论(0编辑  收藏  举报