问题描述
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><htmlxmlns="http://www.w3.org/1999/xhtml"><head><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/><title>函数的指针调用方式</title></head><body><scriptlanguage="javascript">functionorderNum(numAry,func)//**********定义通用排序函数***********************{//***********参数验证,如果第一个参数不是数组或第二个参数不是函数侧抛出异常**********************if(!(numAryinstanceofArray)||!(funcinstanceofFunction)){varerror=newError();//************生成错误信息*********************error.number=10000;//*************定义错误号********************error.message="参数错误";//*************错误描述********************throwerror;//*************抛出异常********************}for(i=0;i<numAry.length-1;i++)//*************开始排序********************{for(j=i+1;j<numAry.length;j++){if(func(numAry[i],numAry[j]))//*************使用回调函数排序,规则由用户设定********************{vartemp=numAry[i];numAry[i]=numAry[j];numAry[j]=temp;}}}returnnumAry;//***********返回排序后的数据**********************}functionbijiao(m,n)//***********回调函数,用户定义的排序规则**********************{return(m<n);//************规则:从小到大*********************}vararyNum=newArray(3,6,8,1,2,7,9);//*********生成一数组************************document.write("<li>排序前:"+aryNum+"</li>");//*********输出排序前的数据******************aryNum=orderNum(aryNum,bijiao);//*********调用排序函数**********************document.write("<li>排序后:"+aryNum+"</li>");//*********输出排序后的数组******************</script></body></html>
解决方案
解决方案二:
该回复于2011-05-04 10:37:52被版主删除
解决方案三:
引用1楼yuan8080的回复:
期待啊!!
结帖率是0
解决方案四:
JAVA里都木有指针。。
解决方案五:
javascript里的函数指针,就是函数名,在调用前判断一下是否函数就可以了if(typeof(funcName)=="function)){funcName();}