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

JavaScript進階教程(第三課第二部分)第1/2頁

 更新時間:2007年04月06日 00:00:00   作者:  

    要使定時器循環(huán)工作你需要寫一個函數(shù)實現(xiàn)循環(huán)調(diào)用。這里是一個例子:

    var the_count = 0;
    var the_timeout;
    function doTimer()
    {
        window.document.timer_form.the_text.value = the_count;
        the_count += 2;
        the_timeout = setTimeout("doTimer();", 2000);
    }

    這里用到的定時器就是上一頁所用的定時器。當用戶點擊按鈕時就調(diào)用該函數(shù)。該函數(shù)將the_count的當前值寫到文字框中。然后the_count增加2,則開始調(diào)用函數(shù)自身。文字框中的數(shù)值也相應更新,the_count在增加2, 則再次調(diào)用函數(shù)自身。在等待的這兩秒期間瀏覽器則可以執(zhí)行其他的同步工作。the_count一增加2就執(zhí)行另一次setTimeout()。你不用擔心會造成內(nèi)存崩潰,因為在給定時間內(nèi)只有一個setTimeout()在執(zhí)行。

    而無限的"while" 循環(huán)則會鎖定瀏覽器的工作,在執(zhí)行該循環(huán)的過程中瀏覽器不能同時執(zhí)行別的任何指令。而setTimeout則可以使循環(huán)的間隙中讓瀏覽器執(zhí)行別的工作。

    如何取消setTimeout?

    現(xiàn)在你已經(jīng)學習了如何設置一個無限循環(huán)。但是你必須懂得如何終止循環(huán)。其指令就是clearTimeout。上例中定時器還有下面這個表單元素:

    <input type="button" value="stop timer" onClick="clearTimeout(the_timeout);">

    點擊這個按鈕就可以終止定時器。指令是clearTimeout(),其實很簡單,如果你這樣設置setTimeout,the_timeout = setTimeout("some javascript",3000);

    你可以這樣取消定時器:clearTimeout(the_timeout);

    很簡單,對吧?下面我們看一個復雜循環(huán)定時器,一個可以報告時間的定時器。

    現(xiàn)在時間是:

   

    點擊“啟動時鐘”則時鐘開始運行。它從你的計算機中讀取時間并每半秒更新一次文字框中的顯示。這個例子通過一個自調(diào)用的函數(shù)設置了一個定時器。同時這個例子可以讓你了解一點Date對象的功能。當講解cookies時,我提到過Date對象。

    以下是代碼:
    function writeTime() {
        // 獲得日期對象
        var today = new Date();

        // 從對象中獲得信息
        var hours = today.getHours();
        var minutes = today.getMinutes();
        var seconds = today.getSeconds();

        // fixTime 使分和秒可以正常顯示
        // 對于小于10的數(shù)字則在該數(shù)字前加一個0
        minutes = fixTime(minutes);
        seconds = fixTime(seconds);

        //將時間字符串組合在一起并寫出
        var the_time = hours + ":" + minutes + ":" + seconds;
        window.document.the_form.the_text.value = the_time;

        //每半秒鐘執(zhí)行一次該函數(shù)
        the_timeout= setTimeout('writeTime();',500);
    }

    function fixTime(the_time) {
        if (the_time <10)
        {
            the_time = "0" + the_time;
        }

        return the_time;
    }

    我們仔細研究一下代碼。

    var today = new Date();
    正如new Array() 可以生成一個新的數(shù)組,你可以可以用new Date() 生成一個新的日期對象。生成對象之后,你可以對其提出你的問題。你生成的新的日期對象的括號中間沒有任何參數(shù), 但JavaScript會查詢計算機的始終并用其生成新的日期對象?,F(xiàn)在我們的日期對象名為"today" ,我們可以從中提取相應的信息。

    var hours = today.getHours();
    這條用于獲得當前的小時值。它是軍隊格式的時間,即,如果當前時間是下午兩點,則它返回的值是14。getHours()是Javascript的日期對象內(nèi)置的方法調(diào)用。

    var minutes = today.getMinutes(); var seconds = today.getSeconds();
    這幾行原理和getHours()類似。

    minutes = fixTime(minutes);
    getMinutes存在一些問題,如果分鐘是11:01, getMinutes將返回 "1"。時鐘的顯示格式可不是這樣,它應該顯示為“01”。fixTime函數(shù)就是用于執(zhí)行糾正顯示格式的功能。

    下面兩行將字符串組合在一起并顯示出來,
    the_timeout = setTimeout('writeTime();', 500);

    設置每半秒執(zhí)行一次該函數(shù)的循環(huán)。

    下一講我們將學習如何在定時器中加入變量。

相關文章

  • 以Python代碼實例展示kNN算法的實際運用

    以Python代碼實例展示kNN算法的實際運用

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

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

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

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

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

    js JSON.stringify()基礎詳解

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

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

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

    JavaScript中BOM和DOM詳解

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

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

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

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

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

    詳解js加減乘除精確計算

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

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

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

最新評論

鄱阳县| 西昌市| 河东区| 穆棱市| 万荣县| 漠河县| 德阳市| 舞阳县| 白水县| 丹棱县| 清河县| 布拖县| 达州市| 张家川| 无棣县| 大竹县| 元朗区| 盐山县| 东城区| 鄄城县| 思茅市| 神池县| 平原县| 恭城| 霞浦县| 雷山县| 扎赉特旗| 洪湖市| 玛纳斯县| 新乡市| 杂多县| 偏关县| 砀山县| 新丰县| 理塘县| 镇远县| 彝良县| 革吉县| 应用必备| 九寨沟县| 泰安市|