js function定义函数使用心得


Posted in Javascript onApril 15, 2010

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

以上三种应该能处理大部分代码了。
Javascript 相关文章推荐
jquery选择器需要注意的问题
Nov 26 Javascript
JavaScript中英文字符长度统计方法示例【按照中文占2个字符】
Jan 17 Javascript
React学习笔记之列表渲染示例详解
Aug 22 Javascript
vue-router路由懒加载和权限控制详解
Dec 13 Javascript
JS获取input[file]的值并显示在页面的实现方法
Mar 09 Javascript
JavaScript轮播停留效果的实现思路
May 24 Javascript
jQuery md5加密插件jQuery.md5.js用法示例
Aug 24 jQuery
解决vue 引入子组件报错的问题
Sep 06 Javascript
详解适配器在JavaScript中的体现
Sep 28 Javascript
使用element-ui的el-menu导航选中后刷新页面保持当前选中状态
Jul 19 Javascript
jqGrid表格底部汇总、合计行footerrow处理
Aug 21 Javascript
VUE单页面切换动画代码(全网最好的切换效果)
Oct 31 Javascript
combox改进版 页面原型参考dojo的,比网上jQuery的那些combox功能强,代码更小
Apr 15 #Javascript
关于文本框的一些限制控制总结~~
Apr 15 #Javascript
JS input文本框禁用右键和复制粘贴功能的代码
Apr 15 #Javascript
JQuery,Extjs,YUI,Prototype,Dojo 等JS框架的区别和应用场景简述
Apr 15 #Javascript
js利用与或运算符优先级实现if else条件判断表达式
Apr 15 #Javascript
JS下高效拼装字符串的几种方法比较与测试代码
Apr 15 #Javascript
js 兼容多浏览器的回车和鼠标焦点事件代码(IE6/7/8,firefox,chrome)
Apr 14 #Javascript
You might like
APACHE的AcceptPathInfo指令使用介绍
2013/01/18 PHP
php准确计算复活节日期的方法
2015/04/18 PHP
php简单计算年龄的方法(周岁与虚岁)
2016/12/06 PHP
golang、python、php、c++、c、java、Nodejs性能对比
2017/03/12 NodeJs
php和nginx交互实例讲解
2019/09/24 PHP
PHP文件打开关闭及读写操作示例解析
2020/08/06 PHP
PHP rsa加密解密算法原理解析
2020/12/09 PHP
cookie中的path与domain属性详解
2013/12/18 Javascript
Visual Studio中js调试的方法图解
2014/06/30 Javascript
jquery中EasyUI实现异步树
2015/03/01 Javascript
javascript中递归函数用法注意点
2015/07/30 Javascript
jquery获取input type=text中的值的各种方式(总结)
2016/12/02 Javascript
使用微信内嵌H5网页解决JS倒计时失效问题
2017/01/13 Javascript
js实现带缓动动画的导航栏效果
2017/01/16 Javascript
Angular中ng-bind和ng-model的区别实例详解
2017/04/10 Javascript
JS获取鼠标位置距浏览器窗口距离的方法示例
2017/04/11 Javascript
JavaScript操作文件_动力节点Java学院整理
2017/06/30 Javascript
在vue中解决提示警告 for循环报错的方法
2018/09/28 Javascript
vue实现的微信机器人聊天功能案例【附源码下载】
2019/02/18 Javascript
微信小程序实现上拉加载功能示例【加载更多数据/触底加载/点击加载更多数据】
2020/05/29 Javascript
vue-router之解决addRoutes使用遇到的坑
2020/07/19 Javascript
[00:36]DOTA2勇士令状莱恩声望物品——冥晶之厄展示
2018/05/25 DOTA
Python3 Random模块代码详解
2017/12/04 Python
Python实现时钟显示效果思路详解
2018/04/11 Python
django 类视图的使用方法详解
2019/07/24 Python
python global和nonlocal用法解析
2020/02/03 Python
Python 制作查询商品历史价格的小工具
2020/10/20 Python
基于python实现坦克大战游戏
2020/10/27 Python
opencv python 对指针仪表读数识别的两种方式
2021/01/14 Python
C#如何调用Windows程序打开一个文档
2014/12/26 面试题
学生处主任岗位职责
2013/12/01 职场文书
宿舍违规用电检讨书
2014/02/16 职场文书
2014企业年终工作总结
2014/12/23 职场文书
给男朋友的道歉短信
2015/05/12 职场文书
信息技术研修心得体会
2016/01/08 职场文书
JS实现简单的九宫格抽奖
2022/06/28 Javascript