2011-03-16 34 views
0

我想在java脚本中将数组从函数传递到另一个函数,但是当我做到这一点时,浏览器会跟踪,我不知道为什么。这里是我的代码:从javascript函数传递数组到另一个

function convertToBinary(decNumber){ 

      var copyDecNum=Number(decNumber); 
      var binaryValues= new Array(); 
      var cnt=0; 
       while(copyDecNum.value!=0) 
      { 
       binaryValues[cnt]=Math.floor(copyDecNum.value%2); 
       copyDecNum.value=Math.floor(copyDecNum.value/2); 
       cnt++; 

      } 
      binaryValues[cnt]=copyDecNum%2; 
      viewResult(binaryValues,decNumber); 



     } 

     function viewResult(binaryValues,decNumber){ 

      alert("here"+binaryValues.length);   //here's the problem 
      } 

有人可以帮忙吗?

+1

这是什么行'binaryValues [CNT] = copyDecNum%2;'?我明白,你试图将十进制数转换成二进制。算法看起来是正确的,但是对这条线有什么期望?如果你想追加它作为最后一个循环不应该是'binaryValues [cnt] = copyDecNum.value%2;'? – Chris 2011-03-16 07:47:09

+0

是的,对,它没有任何意义。 – palAlaa 2011-03-16 07:59:12

回答

3

如果你想一个十进制数转换为二进制使用以下,

var dec2bin = function (num) { 
    return +(num.toString(2)) //convert number to binary string, then make that a number 
} 
+0

非常奇怪的代码! :) – palAlaa 2011-03-16 08:13:45

+0

这里没有什么奇怪的。我刚刚利用了该语言提供的内容。参考:[MDC](https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Number/toString) – 2011-03-16 08:17:02

+0

我喜欢这种编码方式,谢谢你。 – palAlaa 2011-03-16 08:24:28

0

在代码中使用copyDecNum而不是copyDecNum.value

+0

我需要的价值,所以我必须使用。价值 – palAlaa 2011-03-18 05:52:06

相关问题