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 相关文章推荐
动态为事件添加js代码示例
Feb 15 Javascript
Jquery实现兼容各大浏览器的Enter回车切换输入焦点的方法
Sep 01 Javascript
javascript数组详解
Oct 22 Javascript
JS简单操作select和dropdownlist实例
Nov 26 Javascript
Node.js中使用socket创建私聊和公聊聊天室
Nov 19 Javascript
AngularJS模块学习之Anchor Scroll
Jan 19 Javascript
基于bootstrap的文件上传控件bootstrap fileinput
Dec 23 Javascript
vue 如何添加全局函数或全局变量以及单页面的title设置总结
Jun 01 Javascript
vue单页应用在页面刷新时保留状态数据的方法
Sep 21 Javascript
vue指令做滚动加载和监听等
May 26 Javascript
js中Function引用类型常见有用的方法和属性详解
Dec 11 Javascript
基于Vue.js+Nuxt开发自定义弹出层组件
Oct 09 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
php桌面中心(一) 创建数据库
2007/03/11 PHP
推荐Discuz!5的PHP代码高亮显示与实现可运行代码
2007/03/15 PHP
php fckeditor 调用的函数
2009/06/21 PHP
ThinkPHP实例化模型的四种方法概述
2014/08/22 PHP
Laravel模板引擎Blade中section的一些标签的区别介绍
2015/02/10 PHP
php发送与接收流文件的方法
2015/02/11 PHP
php自定义错误处理用法实例
2015/03/20 PHP
highchart数据源纵轴json内的值必须是int(详解)
2017/02/20 PHP
tp5框架内使用tp3.2分页的方法分析
2019/05/05 PHP
用PHP做了一个领取优惠券活动的示例代码
2019/07/05 PHP
php创建多级目录与级联删除文件的方法示例
2019/09/12 PHP
php使用redis的几种常见操作方式和用法示例
2020/02/20 PHP
jquery刷新页面的实现代码(局部及全页面刷新)
2011/07/11 Javascript
js读取注册表的键值示例
2013/09/25 Javascript
jquery单选框radio绑定click事件实现方法
2015/01/14 Javascript
jQuery基于ajax实现带动画效果无刷新柱状图投票代码
2015/08/10 Javascript
什么是JavaScript注入攻击?
2016/09/14 Javascript
简单实现Vue的observer和watcher
2016/12/21 Javascript
JavaScript cookie详解及简单实例应用
2016/12/31 Javascript
jQuery封装placeholder效果实现方法,让低版本浏览器支持该效果
2017/07/08 jQuery
AngularJS路由删除#符号解决的办法
2017/09/28 Javascript
vue2 mint-ui loadmore实现下拉刷新,上拉更多功能
2018/03/21 Javascript
js将键值对字符串转为json字符串的方法
2018/03/30 Javascript
解决layui table表单提示数据接口请求异常的问题
2019/09/24 Javascript
python Django连接MySQL数据库做增删改查
2013/11/07 Python
Python pass 语句使用示例
2014/03/11 Python
django缓存配置的几种方法详解
2018/07/16 Python
用Python写一个自动木马程序
2019/09/17 Python
Python字符串的15个基本操作(小结)
2021/02/03 Python
Java工程师面试集锦之Spring框架
2013/06/16 面试题
超市营业员岗位职责
2013/12/20 职场文书
公司活动策划方案
2014/01/13 职场文书
绩效管理实施方案
2014/03/19 职场文书
新闻发布会策划方案
2014/06/12 职场文书
Python 中 Shutil 模块详情
2021/11/11 Python
ubuntu端向日葵键盘输入卡顿问题及解决
2022/12/24 Servers