js function使用心得


Posted in Javascript onMay 10, 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 相关文章推荐
浅谈javascript的数据类型检测
Jul 10 Javascript
你的 mixin 真的兼容 ECMAScript 5 吗?
Apr 11 Javascript
JavaScript对象和字串之间的转换实例探讨
Apr 21 Javascript
jquery触发a标签跳转事件示例代码
Jul 21 Javascript
JavaScript表单通过正则表达式验证电话号码
Mar 14 Javascript
JavaScript动态添加列的方法
Mar 25 Javascript
浅谈setTimeout 与 setInterval
Jun 23 Javascript
jQuery 常用代码集锦(必看篇)
May 16 Javascript
js实现自定义进度条效果
Mar 15 Javascript
babel的使用及安装配置教程
Feb 22 Javascript
从0到1构建vueSSR项目之路由的构建
Mar 07 Javascript
使用Vue实现一个树组件的示例
Nov 06 Javascript
javascript 模式设计之工厂模式详细说明
May 10 #Javascript
javascript 精粹笔记
May 09 #Javascript
javascript之通用简单的table选项卡实现(二)
May 09 #Javascript
javascript动态添加表格数据行(ASP后台数据库保存例子)
May 08 #Javascript
使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
May 07 #Javascript
javascript 通用简单的table选项卡实现
May 07 #Javascript
jQuery 创建Dom元素
May 07 #Javascript
You might like
后宫无数却洁身自好的男主,唐三只爱小舞
2020/03/02 国漫
CI(CodeIgniter)框架介绍
2014/06/09 PHP
PHP生成条形图的方法
2014/12/10 PHP
php+mysqli实现批量执行插入、更新及删除数据的方法
2015/01/29 PHP
php防止用户重复提交表单
2015/11/02 PHP
goto语法在PHP中的使用教程
2020/09/17 PHP
js报错 Object doesn't support this property or method的原因分析
2011/03/31 Javascript
解析javascript 浏览器关闭事件
2013/07/08 Javascript
JavaScript学习笔记之DOM基础 2.4
2015/08/14 Javascript
javascript原生ajax写法分享
2016/04/10 Javascript
浅谈javascript中关于日期和时间的基础知识
2016/07/13 Javascript
在javaScript中检测数据类型的几种方式小结
2017/03/04 Javascript
详解vue axios用post提交的数据格式
2018/08/07 Javascript
vue中实现点击空白区域关闭弹窗的两种方法
2020/12/30 Vue.js
js动态添加带圆圈序号列表的实例代码
2021/02/18 Javascript
Python fileinput模块使用实例
2015/06/03 Python
深入理解Python单元测试unittest的使用示例
2017/11/18 Python
Python实现base64编码的图片保存到本地功能示例
2018/06/22 Python
pygame游戏之旅 游戏中添加显示文字
2018/11/20 Python
python防止随意修改类属性的实现方法
2019/08/21 Python
解决python cv2.imread 读取中文路径的图片返回为None的问题
2020/06/02 Python
windows系统Tensorflow2.x简单安装记录(图文)
2021/01/18 Python
宝塔面板出现“open_basedir restriction in effect. ”的解决方法
2021/03/14 PHP
英国时尚家具、家居饰品及礼品商店:Graham & Green
2016/09/15 全球购物
美国最佳选择产品网站:Best Choice Products
2019/05/27 全球购物
莫斯科的韩国化妆品店:Sifo
2019/12/04 全球购物
美国价格实惠的在线眼镜网站:Zeelool
2020/12/25 全球购物
蛋糕店创业计划书
2014/05/06 职场文书
应急管理培训方案
2014/06/12 职场文书
公司离职证明范本(汇总)
2014/09/10 职场文书
副乡长群众路线教育实践活动个人对照检查材料
2014/09/19 职场文书
房产授权委托书范本
2014/09/22 职场文书
Python实现生活常识解答机器人
2021/06/28 Python
Python中Numpy和Matplotlib的基本使用指南
2021/11/02 Python
深入理解 Golang 的字符串
2022/05/04 Golang
jdbc中自带MySQL 连接池实践示例
2022/07/23 MySQL