最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JavaScript進(jìn)階教程(第三課第二部分)

 更新時(shí)間:2007年04月06日 00:00:00   作者:  

    定時(shí)器的功能主要在于設(shè)定某個(gè)未來(lái)的時(shí)間,讓Javascript到時(shí)執(zhí)行某個(gè)語(yǔ)句:

    var the_string = "hello";
    the_timeout = setTimeout("alert(the_string);", 60000);

    這兩行指令讓JavaScript等待一分鐘然后彈出一個(gè)提示框顯示the_string變量所包含的內(nèi)容。所以一分鐘后JavaScript就尋找叫做the_string的變量并調(diào)用alert()。但是問(wèn)題是一分鐘后該變量中所包含的內(nèi)容可能是別的什么。所以如果你把這兩行代碼放在一個(gè)函數(shù)內(nèi),setTimeout有可能會(huì)報(bào)錯(cuò)。例如在下例中:

    function alertInAMinute()
    {
        var the_string = "hello";
        the_timeout = setTimeout("alert(the_string);", 60000);
    }

    然后你在某個(gè)鏈接中調(diào)用這個(gè)函數(shù):

    <a href="#" onClick="alertInAMinute(); return false;">blah!</a>

    可能會(huì)出錯(cuò)。因?yàn)槟愣x名為the_string的變量時(shí)用的是var,而當(dāng)你在一個(gè)函數(shù)內(nèi)使用var時(shí),Javascript將其理解為該變量只存在于該函數(shù)中。一旦離開該函數(shù)而進(jìn)入另一個(gè)函數(shù)后,該變量就會(huì)從Javascript的內(nèi)存中消失。所以當(dāng)后來(lái)需要調(diào)用該變量時(shí),Javascript從它的內(nèi)存中是不可能找到該變量的,錯(cuò)誤因此就產(chǎn)生了。

    產(chǎn)生問(wèn)題的原因在于你將一個(gè)變量傳遞給setTimeout。你可以通過(guò)將變量的值而不是變量本身傳遞給setTime來(lái)避免這個(gè)問(wèn)題:

    function alertInAMinute()
    {
        var the_string = "hello";
        the_timeout = setTimeout("alert('" + the_string + "');",60000);
    }

    這段代碼將變量the_string從setTimeout的引號(hào)中拉出來(lái),由于該變量變量目前不在setTimeout的引號(hào)內(nèi),JavaScript就可以從內(nèi)存中找到該變量的值。

    定時(shí)器在動(dòng)態(tài)HTML中用途非常廣泛,所以值得你仔細(xì)研究它。

相關(guān)文章

  • 以Python代碼實(shí)例展示kNN算法的實(shí)際運(yùn)用

    以Python代碼實(shí)例展示kNN算法的實(shí)際運(yùn)用

    這篇文章主要介紹了以Python代碼實(shí)例展示kNN算法的實(shí)際運(yùn)用,這里舉了一個(gè)用來(lái)預(yù)測(cè)豆瓣電影用戶的性別的例子,需要的朋友可以參考下
    2015-10-10
  • javaScript復(fù)制功能調(diào)用實(shí)現(xiàn)方案

    javaScript復(fù)制功能調(diào)用實(shí)現(xiàn)方案

    說(shuō)到使用js實(shí)現(xiàn)點(diǎn)擊復(fù)制的功能,我下面想說(shuō)的方法也是和網(wǎng)上的大同小異的。js實(shí)現(xiàn)是很簡(jiǎn)單,最難的是兼容問(wèn)題,畢竟用IE以外的人還是有很多的
    2012-12-12
  • javascript數(shù)據(jù)代理與事件詳解分析

    javascript數(shù)據(jù)代理與事件詳解分析

    所謂數(shù)據(jù)代理(也叫數(shù)據(jù)劫持),指的是在訪問(wèn)或者修改對(duì)象的某個(gè)屬性時(shí),通過(guò)一段代碼攔截這個(gè)行為,進(jìn)行額外的操作或者修改返回結(jié)果。比較典型的是 Object.defineProperty() 和 ES2015 中新增的 Proxy 對(duì)象
    2021-11-11
  • js JSON.stringify()基礎(chǔ)詳解

    js JSON.stringify()基礎(chǔ)詳解

    JSON.stringify() 方法是將一個(gè)JavaScript值(對(duì)象或者數(shù)組)轉(zhuǎn)換為一個(gè) JSON字符串,如果指定了replacer是一個(gè)函數(shù),則可以選擇性的替換值,或者如果指定了replacer是一個(gè)數(shù)組,可選擇性的僅包含數(shù)組指定的屬性
    2019-06-06
  • javascript內(nèi)置對(duì)象arguments詳解

    javascript內(nèi)置對(duì)象arguments詳解

    這篇文章主要介紹了javascript內(nèi)置對(duì)象arguments,實(shí)例講解arguments是什么怎么用,需要的朋友可以參考下
    2014-03-03
  • JavaScript中BOM和DOM詳解

    JavaScript中BOM和DOM詳解

    本文主要講解了JavaScript中BOM和DOM,BOM為瀏覽器對(duì)象模型,DOM 為文檔對(duì)象模型,兩者之間有很大的區(qū)別,感興趣的小伙伴可以閱讀一下這篇文章,了解相關(guān)內(nèi)容
    2021-08-08
  • Javascript中的五種數(shù)據(jù)類型詳解

    Javascript中的五種數(shù)據(jù)類型詳解

    這篇文章主要介紹了Javascript中的五種數(shù)據(jù)類型詳解,需要的朋友可以參考下
    2014-12-12
  • Javascript模塊化編程(一)模塊的寫法最佳實(shí)踐

    Javascript模塊化編程(一)模塊的寫法最佳實(shí)踐

    Javascript模塊化編程,已經(jīng)成為一個(gè)迫切的需求。理想情況下,開發(fā)者只需要實(shí)現(xiàn)核心的業(yè)務(wù)邏輯,其他都可以加載別人已經(jīng)寫好的模塊但是,Javascript不是一種模塊化編程語(yǔ)言,它不支持類class,更遑論模塊module了
    2013-01-01
  • 詳解js加減乘除精確計(jì)算

    詳解js加減乘除精確計(jì)算

    這篇文章主要介紹了js加減乘除精確計(jì)算,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • JavaScript Math.ceil 方法(對(duì)數(shù)值向上取整)

    JavaScript Math.ceil 方法(對(duì)數(shù)值向上取整)

    js Math.ceil用于對(duì)數(shù)值向上取整,即得到大于或等于該數(shù)值的最小整數(shù),需要的朋友可以參考下
    2015-01-01

最新評(píng)論

嘉义县| 胶南市| 四川省| 彩票| 大洼县| 楚雄市| 察隅县| 阳谷县| 依安县| 临邑县| 云霄县| 潮州市| 龙泉市| 桃园县| 托克逊县| 南康市| 鄯善县| 新昌县| 嘉义县| 枞阳县| 蒙山县| 桂林市| 蕉岭县| 漳州市| 苍南县| 正宁县| 雷州市| 安阳市| 鄂尔多斯市| 勐海县| 泾川县| 雷州市| 永德县| 通渭县| 嫩江县| 工布江达县| 怀来县| 夏邑县| 雅江县| 马边| 土默特左旗|