js里function的几种用法

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(){}

冒泡排序(Bubble Sort),它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。 这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,所以叫“冒泡排序”。 冒泡排序算法的原理如下: 1.比较相邻的元素。如果第一个比第二个大,就交换他们两个。 2.对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。 3.针对所有的元素重复以上的步骤,除了最后一个。 4.持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

经验分享 程序员 微信小程序 职场和发展