• Javascript数值转换(string,int,json)


    数值:

    在JavaScript中,数值转换一般有三种方式:

    一、Number(param)函数:param可以用于任何数据类型

    1.1 param是Boolean值,true和false分别转换为1和0;

    1.2 param是数值,只是简单的传入和返回

    1.3 param是null和undefined,分别返回0和NaN

    1.4 param是字符串,遵循下列规则:

    1.4.1 如果字符串中只包含数字,则转换为十进制,前导0被忽略;

    1.4.2 如果字符串中包含有效的浮点数格式,则返回对应的浮点数值,前导0被忽略;

    1.4.3 如果字符串包含有效的十六进制,则返回等大的十进制数值

    1.4.4 如果字符串为空,则返回0

    1.4.5 如果字符串中包含除上述格式外的字符,则返回NaN

    1.5 param是对象,则调用valueOf()方法,依照前面的规则转换返回字符串值,若返回NaN,则调用toString()方法,再次依照前面的规则转换返回字符串值。

    1.6 示例:

    var num1 = Number("hello"); //NaN 
    var num2 = Number(""); //0
    var num3 = Number("00022"); //22
    var num4 = Number(true); //1

    二、parseInt(param):把字符串转换成整数,param是字符串类型。

    parseInt()忽略字符串前面的空格,直到找到第一个非空格字符S;若S不是数字或者负号,则返回NaN(即parseInt()对空字符返回NaN,注意Number()对空返回0),若S是数字,parseInt()会继续解析下一个字符,直到解析完所有字符或者遇到了一个非数字字符。parseInt()支持对八进制、十六进制的解析

    var num1 = parseInt("1234blue"); //1234 
    var num2 = parseInt(""); //NaN
    var num3 = parseInt("22.5"); //22
    var num4 = parseInt("070"); //八进制,转换为十进制的56

    三、parseIFloat(param):把字符串转换成浮点数,param是字符串类型。

    与parseInt类似,parseFloat()从第一个字符开始解析,直到解析完所有字符或者遇到了一个非浮点数字符。第一个小数点有效,但是第二个则无效,且该函数只能解析十进制数,因为它始终会忽略前导0.

    var num1 = parseFloat("1234blue"); // 1234 
    var num2 = parseFloat("0xf6"); // 0
    var num3 = parseFloat("22.5"); // 22.5
    var num4 = parseFloat("22.5.4"); //22.5
    var num5 = parseFloat("3.125e7"); // 31250000

    原文:http://www.jb51.net/article/43136.htm

    JSON:

    例如:

    JSON字符串:
    var str1 = '{ "name": "cxh", "sex": "man" }';
    JSON对象:
    var str2 = { "name": "cxh", "sex": "man" };

    一、JSON字符串转换为JSON对象

    要使用上面的str1,必须使用下面的方法先转化为JSON对象:

    //由JSON字符串转换为JSON对象
    var obj = eval('(' + str + ')');
    或者
    var obj = str.parseJSON(); //由JSON字符串转换为JSON对象
    或者
    var obj = JSON.parse(str); //由JSON字符串转换为JSON对象
    然后,就可以这样读取:
    Alert(obj.name);
    Alert(obj.sex);

    特别注意:如果obj本来就是一个JSON对象,那么使用eval()函数转换后(哪怕是多次转换)还是JSON对象,但是使用parseJSON()函数处理后会有问题(抛出语法异常)。

    二、可以使用toJSONString()或者全局方法JSON.stringify()将JSON对象转化为JSON字符串。

    例如:
    var last=obj.toJSONString(); //将JSON对象转化为JSON字符
    或者
    var last=JSON.stringify(obj); //将JSON对象转化为JSON字符
    alert(last);

    注意:

    上面的几个方法中,除了eval()函数是js自带的之外,其他的几个方法都来自json.js包。新版本的 JSON 修改了 API,将 JSON.stringify() 和 JSON.parse() 两个方法都注入到了 Javascript 的内建对象里面,前者变成了 Object.toJSONString(),而后者变成了 String.parseJSON()。如果提示找不到toJSONString()和parseJSON()方法,则说明您的json包版本太低。

    原文:http://www.jb51.net/article/43136.htm

  • 相关阅读:
    opencv-活体检测
    人脸识别
    Opencv-python基本操作
    白话深度学习与Tensorflow(二)
    Linux系统入门(一)-未完成
    编程题29 题目:求对角线元素之和
    编程题28 题目 排序
    编程题27 题目:求100之内的素数
    编程题 18兵乓球比赛
    编程题21 求阶数总和
  • 原文地址:https://www.cnblogs.com/EasonJim/p/6226956.html
Copyright © 2020-2023  润新知