Ajax 板


LINE

※ 引述《hirabbitt (兔子)》之铭言: : 我照网路抄FB语法 : }()); : </script> : 只有这一段的话没有问题 : 但是只要下面再加script : IE就会出现 "必须要有;" IE几? 加了什麽script 你写完之後 程式码长怎样? : 老实说我完全看不懂这一段FB的写法 你看不懂哪里,不懂什麽?orz 我觉得很清楚啊,他就载入一个外部的 script file , 然後宣告了一个 callback 到 window上等着被这个script 里面调用。 你总不会是想要我们一行一行解释给你听吧 囧rz : 尤其是黄色部份和红色部分 : 有人可以指点一二吗? 这可以自己写个简单的测试案例测试看看, 测了一下,IE8 、 chrome正常。 http://jsfiddle.net/spCCx/1/ -- I am a person, and I am always thinking . Thinking in love , Thinking in life , Thinking in why , Thinking in worth. I can't believe any of what , I am just thinking then thinking , but worst of all , most of mine is thinking not actioning... --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 198.203.175.175 ※ 编辑: TonyQ 来自: 198.203.175.175 (09/08 02:58) ※ 编辑: TonyQ 来自: 198.203.175.175 (09/08 02:58)
1F:推 hirabbitt:原来是我少见多怪 最外面的()是指这个function要执行? 09/08 12:33
2F:→ hirabbitt:那後面合在一起的() 是做什麽用的@@? 09/08 12:33
3F:→ TonyQ:function(){}() <<这个()是要执行。 09/08 13:46
4F:→ TonyQ:最外面的 () 就只是包起来当作一个statement而已 没别的用意 09/08 13:46
5F:→ TonyQ:不过常见还是 (function(){})() 就是;其中前面的()也一样只 09/08 13:47
6F:→ TonyQ:是包裹function 当成一个statement 而已。 09/08 13:47
7F:→ tyf99:所以 function(){}(); == function a(){}; a(); 是吗? 09/08 21:05
8F:→ sk1765:function(){}(); 是不能执行的 因为他会视成是 09/08 23:37
9F:→ sk1765:function statement 一定要写成 (function(){})(); 09/08 23:38
10F:→ sk1765:(function() {}) 加了括号 是一个function expression 09/08 23:39
11F:→ s25g5d4:其实()是个可爱又可恶的东西... 09/08 23:40
12F:→ sk1765:才能执行 所以後面才能加()执行 如果整个包起来 09/08 23:40
13F:→ s25g5d4:像是字串 包上了()可以直接调用.match() .split()等函数 09/08 23:41
14F:→ s25g5d4:例如("s25g5d4").split("5"); //return ['s2','g','d4'] 09/08 23:42
15F:→ sk1765:(function (){}()); 前面的function(){}是在括号里的运算式 09/08 23:42
16F:→ sk1765:所以不会被视为 function statement 09/08 23:43
17F:→ sk1765:可以了解一下function statement 和 function expression 09/08 23:46
18F:→ sk1765:的不同 09/08 23:46
19F:推 s25g5d4:我的想法是 js编译器读到function 就会以为这是要建立一 09/08 23:47
20F:→ s25g5d4:个函数 所以後面的()会令他错乱 09/08 23:48
21F:→ s25g5d4:然而先用一个()包起来 他会先运算()里的东西 09/08 23:49
22F:→ s25g5d4:运算完的结果是返回一个函数 所以可以直接套上()执行 09/08 23:49
23F:→ sk1765:(function() {}) ();是因为括号优先运算 算出来一个 09/08 23:57
24F:→ sk1765:function object 後面再加()继续运算成执行 09/08 23:59
25F:→ sk1765:(function() {}()) 则只是在避免成为function statement 09/09 00:00
26F:→ sk1765:在括号内 照 function () {} 算出物件然後再算() 09/09 00:01
27F:→ sk1765:(function (){})();的目的只是在制造一个执行一次的scope 09/09 00:06
28F:→ TonyQ:yes , sk1765 解释得很清楚 09/09 01:52
29F:推 hirabbitt:哇 感谢 学到了以前不会的东西 09/09 12:49







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP