亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

return !function() 與 return function() ? false : t

return !function() 與 return function() ? false : t

喵喔喔 2018-09-04 09:25:39
學習 《JavaScript DOM編程藝術 第2版》(中文)時候遇到的問題links[i].onclick = function() {    return !showPic(this); // showPic(this) ? false : true}我自己試了試,兩者結果一樣,這兩種方法在執行效率上有什么區別嗎?
查看完整描述

1 回答

?
交互式愛情

TA貢獻1712條經驗 獲得超3個贊

這兩種方式都是使用最基本的操作符,效率應該是一樣的。

寫了一段腳本實測了一下:

var t1 = Date.parse(new Date());                                                    
var a = true;                                                                       
function set_a(p) {                                                                 
  var tmp = !p;                                                                     
  return tmp;                                                                       
}                                                                                   
for (var i=0; i<1000000000; i++) {                                                  
  a = a ? false : true;                                                             
}                                                                                   
var t2 = Date.parse(new Date());                                                    
console.log(t2-t1);                                                                 
                                                                                    
                                                                                    
for (var i=0; i<1000000000; i++) {                                                  
  a = !a;                                                                           
}                                                                                                                                                                                           
var t3 = Date.parse(new Date());                                                    
console.log(t3-t2);

Result:

[root@iZ94dn8i2nsZ js]# node answer.js 20002000

兩種方式分別運行了十億此,使用了2000ms,也就是分別跑了2秒鐘時間。

效率一樣。


查看完整回答
反對 回復 2018-10-21
  • 1 回答
  • 0 關注
  • 780 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號