JavaScript 的數值轉換 和計時器 setInterval clearInterval

SieSteven發表於2016-01-08

積累下來的問題如下:

1、js頁面計時器setInterval clearInterval  

2、onbeforeunload  

3、ckplayer外掛呼叫 

4、數值型別的轉換 

本文先記錄1和 4 這兩點:js 頁面計時器,數值型別轉換 

javascript主要有以下三種資料型別轉換方式:

  • 轉換函式:parseInt()和parseFloat()分別將值轉換成整數和浮點數。

  • 強制型別轉換:Boolean(value)、Number(value)、String(value)將給定的值分別轉換成邏輯值、數字(整數或浮點數)及字串。 

  • 弱型別自動轉換:字串與數字進行數學操作符運算時,字串會自動轉為數字。

例項演示:將文字框的值轉化成數值型

var a = document.getElementById("num1").value;
var b = document.getElementById("num2").value;

var c1 = parseFloat(a) + parseFloat(b);   //  函式轉換
var c2 = Number(a) + Number(b);  //  強制型別轉換
var c3 = a*1 + b*1;   // a*1將自動轉化為數字型別
//-----------------------------------------------------------------------------頁面計時器--------------
下面是頁面計時器

  var intX; //這個必須寫在startX函式外或不寫,stopX才有效。
        var testtms = 0;
        var calcEnergyPoint = 0;
        function startX() {
            intX = setInterval(func, 1000) //通過函式呼叫setInterval時,第一個引數不可以用"func()"這種形式,只能直接用函式名
            var dT = document.getElementById("oDiv_showCurrTime");
            function func() {
                var dTime = new Date();
                // dT.innerHTML = dTime.toLocaleTimeString();
                dT.innerHTML = testtms + " :  " + intX + " :  " + dTime.toLocaleTimeString();
                testtms++;
                calcEnergyPoint++;
                parInfo.seeVideoTime = testtms;
                if (calcEnergyPoint % 2 == 0) {
                    parInfo.energyPoint += 5;
                    calcEnergyPoint = 0;
                    // 設定能量點加5
                    var oldEnergyPoint = $("#energyPointTop").html();
                    var newEnergyPoint =parseInt( oldEnergyPoint) + 5;
                    $("#energyPointTop").html(newEnergyPoint);
                }
            }
        }
        function stopX() {
            window.clearInterval(intX) //注意!如果var intX定義在startX內,則無法清除!
        }
//-------------------頁面計時器程式碼結束
 一部分變數用了全域性變數的物件。減少全域性變數的汙染(紅色字型部分)

數值轉換:連線    連線2      
計時器使用: 連結1  連線2     

相關文章