js中對數字(number)進行的操作總結(程式碼)

不言
發布: 2018-08-23 15:27:21
原創
2330 人瀏覽過

這篇文章帶給大家的內容是關於js中對數字(number)進行的操作總結(程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

#1.取得數字 num 二進位形式第 bit 位元的值。注意:
1、bit 從1 開始
2、回傳0 或1
3、範例:2 的二進位為10,第1 位元為0,第2 位元為1

function valueAtBit(num, bit) { var s = num.toString(2); return s[s.length - bit]; } function valueAtBit(num, bit) { //toString转化为二进制,split将二进制转化为数组,reverse()将数组颠倒顺序 var arr = num.toString(2).split("").reverse(); return arr[bit-1]; } function valueAtBit(num, bit) { return (num >> (bit -1)) & 1; }
登入後複製

2.給定二進位字串,將其換算成對應的十進制數字

function base10(str) { return parseInt(str,2); }
登入後複製

3.將給定數字轉換成二進位字串。如果字串長度不足 8 位,則在前面補 0 到滿8位。

function convertToBinary(num) { //转换为2进制格式 var s = num.toString(2); //获得2进制数长度 var l = s.length; if(l<8){ //声明一个字符串用于补满0 var s1 = "0000000"; var s2 = s1.slice(0,8-l); s = s2+s; } return s; } function convertToBinary(num) { var str = num.toString(2); while(str.length < 8) { str = "0" + str; } return str; } function convertToBinary(num) { var s = num.toString(2); return '00000000'.slice(s.length) + s; } function convertToBinary(num) { return ('00000000' + num.toString(2)).slice(-8); //从倒数第八个开始取}
登入後複製

4.求a 和b 相乘的值,a 和b 可能是小數,需要注意結果的精確度問題

//根据两个书中精度较高的一个来确定,先将其转换成字符串,然后根据小数点的位置确定小数位数, //字符串长度减去‘.'的位置后还要再减去1得到正确的小数位数,两个取其大,然后用toFixed()函数确定 //结果的小数位数 function multiply(a, b) { //求两个数中精度大的一个 var stra=a.toString(); var strb=b.toString(); var len=Math.max(stra.length-stra.indexOf('.')-1,strb.length-strb.indexOf('.')-1); // return parseFloat(a*b).toFixed(len); }
登入後複製

相關推薦:

js中對數組進行操作的方法總結(代碼)

淺析js的事件綁定&事件監聽&事件委託的之間內容

以上是js中對數字(number)進行的操作總結(程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
js
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!