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 tools之tabs 选项卡/页签
Jul 25 Javascript
JavaScript中通过闭包解决只能取得包含函数中任何变量最后一个值的问题
Aug 12 Javascript
从零开始学习jQuery (八) 插播:jQuery实施方案
Feb 23 Javascript
jQuery中addClass()方法用法实例
Jan 05 Javascript
jquery转盘抽奖功能实现
Nov 13 Javascript
jQuery使用zTree插件实现树形菜单和异步加载
Feb 25 Javascript
BootStrap glyphicon图标无法显示的解决方法
Sep 06 Javascript
Javascript for in的缺陷总结
Feb 03 Javascript
angular.js指令中的controller、compile与link函数的不同之处
May 10 Javascript
微信、QQ、微博、Safari中使用js唤起App
Jan 24 Javascript
解决vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效问题
Aug 24 Javascript
selenium 反爬虫之跳过淘宝滑块验证功能的实现代码
Aug 27 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使用curl出现Expect:100-continue解决方法
2015/03/03 PHP
php简单实现短网址(短链)还原的方法(测试可用)
2016/05/09 PHP
PHP微信分享开发详解
2017/01/14 PHP
Thinkphp5.0框架视图view的模板布局用法分析
2019/10/12 PHP
如何重写Laravel异常处理类详解
2020/12/20 PHP
Jquery 基础学习笔记之文档处理
2009/05/29 Javascript
jquery中的$(document).ready()与window.onload的区别
2009/11/18 Javascript
IE6不能修改NAME问题的解决方法
2010/09/03 Javascript
自制轻量级仿jQuery.boxy对话框插件代码
2010/10/26 Javascript
TreeView 用法(有代码)(asp.net)
2011/07/15 Javascript
javascript 文件的同步加载与异步加载实现原理
2012/12/13 Javascript
JavaScript 在网页上单击鼠标的地方显示层及关闭层
2012/12/30 Javascript
JS修改iframe页面背景颜色的方法
2015/04/01 Javascript
jQuery实现鼠标单击网页文字后在文本框显示的方法
2015/05/06 Javascript
详解JavaScript中的blink()方法的使用
2015/06/08 Javascript
Bootstrap Paginator分页插件使用方法详解
2016/05/30 Javascript
浅谈Vue的加载顺序探讨
2017/10/25 Javascript
基于vue+canvas的excel-like组件实例详解
2017/11/28 Javascript
对layui中的onevent 和event的使用详解
2019/09/06 Javascript
[00:34]TI7不朽珍藏III——纯金地穴编织者饰品展示
2017/07/15 DOTA
Python-嵌套列表list的全面解析
2016/06/08 Python
python下解压缩zip文件并删除文件的实例
2018/04/24 Python
举例讲解Python常用模块
2019/03/08 Python
Django实现单用户登录的方法示例
2019/03/28 Python
postman模拟访问具有Session的post请求方法
2019/07/15 Python
利用 PyCharm 实现本地代码和远端的实时同步功能
2020/03/23 Python
python模拟点击玩游戏的实例讲解
2020/11/26 Python
使用HTML5原生对话框元素并轻松创建模态框组件
2019/03/06 HTML / CSS
字中字效果的实现【html5实例】
2016/05/03 HTML / CSS
Ibood荷兰:互联网每日最佳在线优惠
2019/02/28 全球购物
Perfume’s Club美国官网:西班牙第一家在线美容店
2020/06/10 全球购物
品牌宣传方案
2014/03/21 职场文书
商业用房租赁协议书
2014/10/13 职场文书
Python代码,能玩30多款童年游戏!这些有几个是你玩过的
2021/04/27 Python
古见同学有交流障碍症 第二季宣传CM公开播出
2022/04/11 日漫
华为HarmonyOS3.0强在哪? 看看鸿蒙3.0这7个小功能
2023/01/09 数码科技