论坛首页 Web前端技术论坛

jquery1.43源码分析之工具方法

浏览 18765 次
该帖已经被评为精华帖
作者 正文
   发表时间:2010-12-23  
   1. document.getElementById('div1').onclick = function(){ 
   2.     ~function(){ 
   3.         alert (this.id); 
   4.     }() 
   5. } 

楼主,问你个事,  你这段代码里 function前边加波浪号这种语法看不懂,麻烦解释一下啊
0 请登录后投票
   发表时间:2011-03-28  
xyqck163 写道
   1. document.getElementById('div1').onclick = function(){ 
   2.     ~function(){ 
   3.         alert (this.id); 
   4.     }() 
   5. } 

楼主,问你个事,  你这段代码里 function前边加波浪号这种语法看不懂,麻烦解释一下啊


波浪号是个普通的运算符. 跟(function(){})()这里的第一对括号一样.都是强制运算的作用. 如果没有它们的话,即functon(){}(). js引擎在编译期会认为你在执行一个函数声明,会报错. 前面加上运算符只是为让引擎把后面的function(){}语句当作表达式.
0 请登录后投票
   发表时间:2011-04-02  
__游乐场 写道
xyqck163 写道
   1. document.getElementById('div1').onclick = function(){ 
   2.     ~function(){ 
   3.         alert (this.id); 
   4.     }() 
   5. } 

楼主,问你个事,  你这段代码里 function前边加波浪号这种语法看不懂,麻烦解释一下啊


波浪号是个普通的运算符. 跟(function(){})()这里的第一对括号一样.都是强制运算的作用. 如果没有它们的话,即functon(){}(). js引擎在编译期会认为你在执行一个函数声明,会报错. 前面加上运算符只是为让引擎把后面的function(){}语句当作表达式.


这个很有道理,不错!!!!
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics