第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

為什么setInterval(tom(),2000);會立即執(zhí)行且只執(zhí)行一次?

為什么setInterval(tom(),2000);會立即執(zhí)行且只執(zhí)行一次?

qq_遁去的一_1 2018-08-07 11:10:05
var tom = function tom()[alert('x');};setInterval(tom(),2000);//立即執(zhí)行,執(zhí)行一次后不再執(zhí)行與var tom = function tom()[alert('x');};setInterval(tom,2000);//很多秒之后執(zhí)行,之后2秒一次請問在setInterval中,tom與tom()為什么會有這種區(qū)別?為什么setInterval(tom(),2000);會立即執(zhí)行且只執(zhí)行一次?
查看完整描述

1 回答

?
慕村9548890

TA貢獻1884條經驗 獲得超4個贊

var tom = function tom(){alert('x');};
setInterval(tom(),2000);

當問“立即執(zhí)行,執(zhí)行一次后不再執(zhí)行”時,我猜你指的是“alert被立即執(zhí)行了,并且此后沒再執(zhí)行”。下面我們來看看文檔中是怎么介紹setInterval方法的:

https://img1.sycdn.imooc.com//5b9e0edb0001e30907890504.jpg

注意func的要求是一個函數(shù),然后這個函數(shù)將會被不斷的重復調用。

你再看看你傳的是什么?是tom(),這是what?這是一個函數(shù)調用,函數(shù)調用就會有返回值,所以你的setInterval(tom(),2000);的實際效果是:

var tom = function tom(){alert('x');};var res = tom();//res其實是undefined,因為你的tom()并沒有指定返回值setInterval(res, 2000);

所以,每隔2秒都執(zhí)行一次undefined,你還期望什么呢?


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

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號