js function定义函数使用心得

时间:2024-04-16 09:10:37 

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


以上三种应该能处理大部分代码了。

标签:js,function,定义函数
0
投稿

猜你喜欢

  • Python字符串和字典相关操作的实例详解

    2023-08-19 12:49:08
  • 使用python开发vim插件及心得分享

    2023-11-22 11:30:32
  • “尊重”设计师?

    2009-03-23 18:14:00
  • 用户研究中的人物角色

    2010-02-08 12:15:00
  • python的id()函数解密过程

    2023-03-04 00:17:52
  • Python 中如何将十六进制转换为 Base64

    2022-09-07 01:20:14
  • Python+Selenium实现短视频自动上传与发布的实践

    2021-06-12 15:58:46
  • 部署.Net6项目到docker

    2024-06-05 15:43:46
  • python global和nonlocal用法解析

    2022-05-17 02:56:17
  • 利用Python网络爬虫爬取各大音乐评论的代码

    2023-01-05 19:26:55
  • Vue冷门技巧递归组件实践示例详解

    2024-05-09 15:13:04
  • 在keras中获取某一层上的feature map实例

    2023-10-19 11:37:24
  • Python可变和不可变、类的私有属性实例分析

    2023-05-27 14:34:08
  • python 实现网上商城,转账,存取款等功能的信用卡系统

    2022-05-26 15:19:36
  • 三大UML建模工具Visio、Rational Rose、PowerDesign的区别比较

    2022-05-27 12:22:45
  • js导出格式化的excel 实例方法

    2024-04-10 16:17:15
  • 用Python中的__slots__缓存资源以节省内存开销的方法

    2021-06-21 10:33:40
  • MySQL复制优点、原理详解

    2024-01-19 04:26:50
  • python中ASCII码字符与int之间的转换方法

    2023-05-20 08:47:29
  • PyQt5+Pycharm安装和配置图文教程详解

    2022-12-20 08:50:26
  • asp之家 网络编程 m.aspxhome.com