zoukankan      html  css  js  c++  java
  • javascript进制转换

    一、语法说明

    1、parseInt()

    parseInt:将字符串转换成整数

    parseInt(string, radix)

    • string要被解析的字符串。
    • 可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。

      如果省略该参数或其值为 0,则数字将以 10 为基础来解析。
      如果它以 “0x” 或 “0X” 开头,将以 16 为基数。

      如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN。

    2、toString()

    toString()方法属于Object对象,JavaScript的许多内置对象都重写了该函数,以实现更适合自身的功能需要。

    类型行为描述
    Array 将 Array 的每个元素转换为字符串,并将它们依次连接起来,两个元素之间用英文逗号作为分隔符进行拼接。
    Boolean 如果布尔值是true,则返回"true"。否则返回"false"。
    Date 返回日期的文本表示。
    Error 返回一个包含相关错误信息的字符串。
    Function 返回如下格式的字符串,其中 functionname 是一个函数的名称,此函数的 toString 方法被调用: "function functionname() { [native code] }"
    Number 返回数值的字符串表示。还可返回以指定进制表示的字符串,请参考Number.toString()。
    String 返回 String 对象的值。
    Object(默认) 返回"[object ObjectName]",其中 ObjectName 是对象类型的名称。

    2、进制转换

    //十进制转其他进制    
    var x=110;  
    alert(x);  
    alert(x.toString(2));  
    alert(x.toString(8));  
    alert(x.toString(32));  
    alert(x.toString(16));  
    
    
    
    //其他转十进制  
    var x='110';  
    alert(parseInt(x,2));  //6    =>以2进制解析110
    alert(parseInt(x,8));  //72    =>以8进制解析110
    alert(parseInt(x,16)); //272    =>以16进制解析110
    
    //其他转其他  
    //先用parseInt转成十进制再用toString转到目标进制  
    alert(String.fromCharCode(parseInt(141,8)))  
    alert(parseInt('ff',16).toString(2));   

    三、测试题目

    Write a function that takes an (unsigned) integer as input, and returns the number of bits that are equal to one in the binary representation of that number.

    Example: The binary representation of 1234 is 10011010010, so the function should return 5 in this case

    <script>
        function countBits(n) {
            var resultString = n.toString(2);
            var l = resultString.length;
            var resultNum = 0;
            for (var i = 0; i < l; i++) {
                resultNum += resultString[i]-0;
            }
            console.log(resultNum);
            return resultNum;
        }
        func(1234);
        </script>

    本文作者starof,因知识本身在变化,作者也在不断学习成长,文章内容也不定时更新,为避免误导读者,方便追根溯源,请诸位转载注明出处:http://www.cnblogs.com/starof/p/6693318.html有问题欢迎与我讨论,共同进步。

  • 相关阅读:
    Object上的静态方法
    【php实现数据结构】单向链表
    图片上传方案详解
    新手必踩坑之display: inline-block
    前端算法题:找出数组中第k大的数字出现多少次
    this的五种指法
    通过java反射实现的excel数据导出
    算法系列-动态规划(4):买卖股票的最佳时机
    算法系列-动态规划(3):找零钱、走方格问题
    数据库仓库系列:(一)什么是数据仓库,为什么要数据仓库
  • 原文地址:https://www.cnblogs.com/starof/p/6693318.html
Copyright © 2011-2022 走看看