2011-06-20 57 views
1

如何計算不同數字之間的步數。Javascript計數步數

我有一個方法,需要一個數字並運行一個代碼片段的數字。我需要看看這個數字是否與另一個或兩個步驟,三個步驟,四個步驟之上或之下的數字緊密相關。

Ex。我發送一個1的方法。下一個發送的數字是4.然後我需要找出在這個例子中有多少個步驟等等,在這種情況下,3個步驟應該是結果。

任何線索?

+3

啊...減? 。 –

+4

我認爲'4 - 1'就是你想要的。 – pimvdb

回答

7

可以使用的功能與閉合:

var value = (function() { 
    var previousValue = null; 
    return function(id) { 
     if (previousValue !== null) { 
      if(previousValue >= id) { 
       alert("Difference: -" + (previousValue - id)); 
      } 
      else alert("Difference: +" + (id - previousValue)); 
     } 
    previousValue = id; 
    }; 
})(); 

看到一個例子小提琴here

+0

工作就像一個魅力!非常感謝您的時間和幫助! – Tobias

1

一個簡單的減法!

var stepx = 1 
var stepy = 4 
var diff = stepy - stepx 
alert (diff) 
+1

事實上這是'-3'。 – pimvdb

+0

@pimvdb當然是,更新(真的沒有什麼可能) – Blowsie

0

增加修爲負步驟

var previousNumber = 0; 

    function countSteps(number) { 
     var result = (number - previousNumber); 
     previousNumber = number; 
     return (result<0) ? result*-1 : result; 
    } 
0

對不起時候被中斷,

<html> 
<head> 
<script> 
var cnt=""; 
function countAndSave(num) { 
    var text = (cnt==="")?num:num+":"+Math.abs(num-cnt)+"/"+cnt 
    cnt=num; 
    return text 
} 
window.onload=function() { 
    document.getElementById("output").innerHTML +="<br />"+countAndSave(1); 
    document.getElementById("output").innerHTML +="<br />"+countAndSave(3); 
    document.getElementById("output").innerHTML +="<br />"+countAndSave(4); 
    document.getElementById("output").innerHTML +="<br />"+countAndSave(1); 
    document.getElementById("output").innerHTML +="<br />"+countAndSave(2); 
    document.getElementById("output").innerHTML +="<br />"+countAndSave(3); 
} 
</script> 
</head> 
<body> 
<div id="output"></div> 
</body> 
</html>