Javascript的奇怪用法
来源:互联网 发布:网络推广访问者 编辑:程序博客网 时间:2024/04/30 08:59
在看AngularJS源码时看到一些Javascript的奇怪写法,先记录下来。
1.
(function(){ window.work=function(){}....})(window)
此法一般在写插件时用,以前在JQuery插件中也见过,意思是声明一个方法,并立即执行它,同时还传入参数window,与下面代码的意思是一样的:
function Controller(w){ this.init=function(){ w.work=function(){ ... } }}new Controller(window).init()
2.
new (function(){ this.al=function(){ alert(123); };})
这是我见过的最奇怪的用法了,相当于声明一个匿名类,并new一个实例出来,它可以调用匿名类中的方法,如下:
(new (function(){ this.al=function(){ alert(123); };})).al();或者:
var instance=new (function(){ this.al=function(){ alert(123); };});instance.al();在或者:
function Controller(){ this.al=function(){ alert(123); };var instance=new (Controller);instance.al();}(这种方式可以构建Javascript的DI机制。)
也许Javascript还有其他的奇怪用法,慢慢发现吧。
最后,我只想说:Javascript,你怎么那么调皮呢?
0 0
- Javascript的奇怪用法
- javascript奇怪的对象
- JavaScript的奇怪问题
- 奇怪的javascript问题
- operator重载的奇怪用法
- pandas的一些奇怪用法
- enable_if 的一个奇怪用法
- javascript--一种奇怪的语言
- 各种奇怪的javascript语法
- 接口与匿名类的奇怪用法
- 接口与匿名类的奇怪用法
- sizeof的奇怪用法(但结果正确)
- Asp.net输出javascript的奇怪问题
- Javascript和DOM的一个奇怪现象
- 奇怪的Javascript(持续更新)
- 奇怪的javascript变量名"name"
- javascript趣题(高人若知道script有什么奇怪的用法或令人费解的地方,务必留下片言碎语,不胜感激!)
- Go语言,struct结构体的那些奇怪的用法
- UVA - 536 Tree Recovery
- HDU 2024
- 程立支付宝首席架构师,视频演讲地址,
- HDU 2025
- 关于ViewPager的懒加载问题
- Javascript的奇怪用法
- 我是一名程序员
- 区分struct和typedef struct
- http、TCP/IP协议与socket之间的区别
- 位,字节,字,字长
- javascript之document对象
- [Lua]入门教程
- PHP的静态变量
- 安装symfony2 如此简单!~