javascript将16进制的字符串转换为10进制整数hex

16进制的字符串 转换为整数

function hex2int(hex) {
    var len = hex.length, a = new Array(len), code;
    for (var i = 0; i < len; i++) {
        code = hex.charCodeAt(i);
        if (48<=code && code < 58) {
            code -= 48;
        } else {
            code = (code & 0xdf) - 65 + 10;
        }
        a[i] = code;
    }
    
    return a.reduce(function(acc, c) {
        acc = 16 * acc + c;
        return acc;
    }, 0);
}

// 15 + 16 * 13 + 256 = 479
console.log(hex2int("1df"));

十进制整数转换16进制

function int2hex(num, width) {
  var hex = "0123456789abcdef";
  var s = "";
  while (num) {
	s = hex.charAt(num % 16) + s;
	num = Math.floor(num / 16);
  }
  if (typeof width === "undefined" || width <= s.length) {
	return "0x" + s;
  }
  var delta = width - s.length;
  var padding = "";
  while(delta-- > 0) {
	padding += "0";
  }
  return "0x" + padding + s;
}

console.log(int2hex(479, 8));

0x000001df

下面是补充资料

JS-Ascii码中字符与十进制/十六进制相互转换

如上述图ASCII标准表中,想将字符“1”转换成十进制或十六进制,实现方法:

var charData = '1';
charData.charCodeAt();    //输出结果为上表中‘1'对应的十进制数据:49
charData.charCodeAt().toString(16);  //输出结果为上表中‘1'对应的十六进制数据:31

若想将不同进制数据转换成对应字母的实现方法:

var num = 49;
String.fromCharCode(num);  //输出49对应的字符 '1'

JS中字符问题(二进制/十进制/十六进制及ASCII码之间的转换)

var a='11160';
alert(parseInt(a,2)); //将111做为2进制来转换,忽略60(不符合二进制),从左至右只将符合二进制数的进行转换
alert(parseInt(a,16)); //将所有的都进行转换
依照此方法,其实可以转换成任何进制
var a='1110';
alert(parseInt(a,10).toString(16)); //将A转换为10进制,然后再转换成16进制 同样也可以是其它进制
下面说下ASCII 码:
function test(){
var a='ab';
var c=a.charCodeAt(1);//返回98 也就是b的AscII码 位置从0开始 

var char=String.fromCharCode(98);返回小写的b
}
//小例子
function test(){ //输出AscII码扩展集中的字符
var c="";
for(var i=1;i<65536;i++){
if((i%10)==0){
c+=i+':\t'+String.fromCharCode(i)+'\t'+'\n';}else{
c+=i+':\t'+String.fromCharCode(i)+'\t';}
}
document.getElementById("abc").innerText=c;
}
<div id='abc'></div> 

js字符与ASCII码互转的方法

大写字母A-Z对应的ASCII码值是65-90
小写字母a-z对应的ASCII码值是97-122

将字母转为ascii嘛的方法:

var str = "A";
str.charCodeAt(); // 65

var str1 = 'a';
str1.charCodeAt(); // 97

将ascii码转为对应字母的方法:

var num = 97;
String.fromCharCode(num); // 'a'

var num1 = 100;
String.fromCharCode(num1); // 'd'

以上就是javascript将16进制的字符串转换为10进制整数hex的详细内容,更多关于16进制的字符串转换为10的资料请关注我们其它相关文章!

(0)

相关推荐

  • javascript将16进制的字符串转换为10进制整数hex

    16进制的字符串 转换为整数 function hex2int(hex) {     var len = hex.length, a = new Array(len), code;     for (var i = 0; i < len; i++) {         code = hex.charCodeAt(i);         if (48<=code && code < 58) {             code -= 48;         } else {

  • php实现将任意进制数转换成10进制的方法

    本文实例讲述了php实现将任意进制数转换成10进制的方法.分享给大家供大家参考.具体如下: php将任意进制的数转换成10进制,例如8进制转换成10进制,16进制转换成10进制 <?php # Show the steps involved in converting a number # from any base (like octal or hex) to base 10 # See below for examples, instructions and copyright functi

  • postgresql 实现16进制字符串转10进制数字

    我就废话不多说了,大家还是直接看代码吧~ CAST(CAST(('x' || '47868E22') AS bit(32)) AS int) 补充:Postgresql中时间戳与日期的相互转换(同样适用于GreenPlum) --日期转时间戳 SELECT EXTRACT(epoch FROM NOW()); SELECT EXTRACT(epoch FROM CAST('2017-12-06 00:17:10' AS TIMESTAMP)); --时间戳转日期 SELECT TO_TIMEST

  • 使用JavaScript进行进制转换将字符串转换为十进制

    JS 是一个很神奇的语言,内制的的很多函数可以帮我们进行数(进)制转换: JS中可以直接使用16进制: var a = 0xff; //255 将任意进制字符串转换为十进制,如二进制,八进制,十六进制, 第二数数不写即为最常用的转换为整型十进制: 复制代码 代码如下: parseInt("11", 2); // 3 2进制转10进制 parseInt("77", 8); // 63 8进制转10进制 parseInt("af", 16); //1

  • JavaScript实现16进制颜色值转RGB的方法

    本文实例讲述了JavaScript实现16进制颜色值转RGB的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/19

  • asp.net(c#)下各种进制间的轻松转换(2进制、8进制、10进制、16进制)

    其中的两个方法可以轻松的实现各种进制的数值间的转换: Convert.ToInt32(string value, int fromBase): 可以把不同进制数值的字符串转换为数字,其中fromBase参数为进制的格式,只能是2.8.10及16: 如Convert.ToInt32("0010",2)执行的结果为2; Convert.ToString(int value, int toBase): 可以把一个数字转换为不同进制数值的字符串格式,其中toBase参数为进制的格式,只能是2.

  • 关于PHP中字符串与多进制转换函数的实例代码

    转换函数 /** * [字符串转换为(2,8,16进制)ASCII码] * @param string $str [待处理字符串] * @param boolean $encode [字符串转换为ASCII|ASCII转换为字符串] * @param string $intType [2,8,16进制标示] * @return string byte_str [处理结果] * @author alexander */ function strtoascii($str, $encode=true,

  • PHP进制转换实例分析(2,8,16,36,64进制至10进制相互转换)

    本文实例讲述了PHP进制转换.分享给大家供大家参考,具体如下: 可以实现: 10进制转换2.8.16.36.62进制 2.8.16.36.62进制转换10进制 有点要注意下,2.8.16进制转换时,使用的是系统的自己的函数. 所以,不管怎么高精度转换值可能大于2147483646. 另外, 32进制低精转换,最大值:2147483646: 32进制高精转换,最大值:77309411327: 64进制高精转换,最大值:133143986175. jinzhi.php文件,自带演示功能. <?php

  • 汇编语言进制转换之16进制转10进制

    使用8086汇编,输入一个16进制的数,程序把该16进制数转换为相应的10进制数输出 程序运行截图: 要实现这样一个程序,思路可以是这样的: 1.由于我们读入的键盘输入是ASCII码表示的,且输入一个字符便得到一个ASCII码,如输入ab,程序中可以得到61h和62h.现在的问题是怎么把这些输入的字符表示成一个完整的数.对于这个问题,我们可以把每次输入的字符的ASCII码先转换为对应的数,0-9之间的数,根据ASCII码表发现可以用 ASCII码减30h 得到0-9对应的十六进制数值,对于a-b

  • c++10进制转换为任意2-16进制数字的实例

    废话不多说,直接上代码 #include<stdio.h> #include<stdlib.h> #include<iostream> using namespace std; int main() { //十进制转换为若干进制>2,<16 = int num; int n;//2-16之间 int a; int i=0; cin>>num>>n; int s[100]; if(n>=2&&n<<16

随机推荐