类型转换

掌握三种类型的转换

  • 转换成字符串类型
  • 转换成数值类型
  • 转换成布尔类型

转换成字符串

1.几乎每一个值都有 toString() 方法,除了 null 和 undefined。

var age =18;
var ageString = age.toString();
console.log(ageString); // "18" var a = true;
var aString =a.toString();
console.log(aString) // "true"

数据类型的 toString(),可以携带一个参数,输出对应进制的值

var a =10;
console.log(a.toString(2)); //"1010"
console.log(a.toString(16)); //"a"
...

2.String() 函数,可以把 null 和 undefined 转换为字符串。

3.使用拼接字符串。

var age = 18;
str = age + "岁"
console.log(str);

转换成数值类型

三种把值转换成数值类型的函数:Number()、 parseInt()、 parseFloat();

Number

Number() 可以把任意的值转为数值,如果要转化的字符串中有任意一个不是数值的字符,返回 NaN。

var num1 = Number(true); //true返回1 ,false返回0;
var num2 = Number(undefined); //返回NaN
var num3 = Number("hello"); //返回NaN
var num4 = Number(" "); //空字符串返回0
var num1 = Number("abc123"); //返回NaN

只要字符串中有任意一个字符不是数值,就会返回 NaN。(没错,就是这么严格)

parseInt

把字符串转换为整数

parseInt("12.3abc");//返回 12,如果第一个是数字会解析到第一个非数字后停止。
parseInt("abc123"); //返回 NaN,如果第一个字符不是数字或符号就返回NaN;
parseInt(" "); //空字符串返回NaN,Number("")返回0;

parseInt() 可以传递两个参数,第一个是要转换的字符串,第二个是要转换的进制。

var num1 = parseInt("0xA"); //10
var num2 = parseInt("A"); //NaN var num3 = parseInt("A",16); //10
var num4 = parseInt("10",16); //16

parseFloat

parseFloat() 把字符串转换为浮点数

parseFloat() 和 parseInt 非常相似,不同之处在于

  • parseFloat()会解析第一个 . ,遇到第二个.或者非数字结束
  • parseFloat()不支持第二个参数,只能解析 10 进制数。
  • 如果解析的内容只有整数,解析成整数。

转换为 Boolean 类型

两种方式

  • Boolean() 函数
  • var b = Boolean("abc");//true

流程控制语句会把后面的值隐式转换成布尔类型。

例如:

 var message;
if(message){ //会自动把message转换为false
//todo
}

转换为 false 的值: false,"",0,null,undefined;

var b = !!"123"; //123为true, !"123" 为false, !!"123"为true。

javascript_04-类型转换的更多相关文章

  1. 为C# as 类型转换及Assembly.LoadFrom埋坑!

    背景: 不久前,我发布了一个调试工具:发布:.NET开发人员必备的可视化调试工具(你值的拥有) 效果是这样的: 之后,有小部分用户反映,工具用不了(没反应或有异常)~~~ 然后,建议小部分用户换个电脑 ...

  2. c# 基础 object ,new操作符,类型转换

    参考页面: http://www.yuanjiaocheng.net/webapi/config-webapi.html http://www.yuanjiaocheng.net/webapi/web ...

  3. Struts2日期类型转换

    针对日期类java.util.Date进行类型转换,要求客户端使用"yyyy-MM-dd","yyyy/MM/dd"中的任意一种输入,并以"yyyy- ...

  4. 【.NET深呼吸】基础:自定义类型转换

    照例,老周在开始吹牛之前,先讲讲小故事,这是朋友提出的建议,老TMD写技术有什么了不起的,人人都会写.后来老周想想,也确实,代码谁不会写,能写到有品位有感悟,就不容易做到.于是,老周接受了该朋友的建议 ...

  5. C++四种类型转换方式。

    类型转换有c风格的,当然还有c++风格的.c风格的转换的格式很简单(TYPE)EXPRESSION,但是c风格的类型转换有不少的缺点,有的时候用c风格的转换是不合适的,因为它可以在任意类型之间转换,比 ...

  6. struts2类型转换

    1. Struts2中的类型转换 我们知道通过HTTP提交到后台的数据,都是字符串的形式,而我们需要的数据类型当然不只字符串类型一种.所以,我们需要类型转换! 在Struts2中,类型转换的概念除了用 ...

  7. C++_系列自学课程_第_11_课_类型转换_《C++ Primer 第四版》

    上次说了关于表达式的一些内容,说到还有一些关于数据类型转换的内容,今天我们接着八一八C++中的数据类型转换. 一.隐式类型转换 在表达式中,有些操作符可以对多种类型的操作数进行操作, 例如 + 操作符 ...

  8. Struts2入门(三)——数据类型转换

    一.前言 笔者一直觉得,学习一个知识点,你首先要明白,这东西是什么?有什么用?这样你才能了解.好了,不说废话. 1.1.类型转换为何存在?什么是类型转换? 在MVC框架中,都是属于表示层解决方案,都需 ...

  9. js条件判断时隐式类型转换

    Javascript 中,数字 0 为假,非0 均为真 在条件判断运算 == 中的转换规则是这样的: 如果比较的两者中有布尔值(Boolean),会把 Boolean 先转换为对应的 Number,即 ...

  10. JavaScript中数据类型转换总结

    JavaScript中数据类型转换总结 在js中,数据类型转换分为显式数据类型转换和隐式数据类型转换. 1, 显式数据类型转换 a:转数字: 1)Number转换: 代码: var a = " ...

随机推荐

  1. linux安装qt

    1.下载run文件 2../运行 3.修改配置文件 sudo gedit /etc/profile 添加如下: port QTDIR=/home/rainbow/zhuxy/soft/Qt5.9.0/ ...

  2. QML工程加载main.qml的两种方式

    1. QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); if (e ...

  3. idea中copyright使用

    1,在idea中找到settings->Editor->copyright->copyright profiles,然后点击+,输入名字,在copyright text中输入模板.然 ...

  4. pipline中执行shell脚本推送镜像并且部署

    实验架构: 192.168.0.96 gitlab 192.168.0.97 jenkins 192.168.0.98 harbor.docker集群 说明:下面代码编译镜像那一步的代码必须靠左,目的 ...

  5. 神啊,看看Log4Net这个东西吧

    这个东西实在是让人感动的想哭囊…………-_-..... Log4Net.config文件 <?xml version="1.0" encoding="utf-8&q ...

  6. SQL在线自助查询

    数据的日常查询统计分析是高频的需求,然而生产数据库由于安全.管理等方面的要求,仅仅对部分人员开发,例如DBA,总监等, 其他人员都要通过DBA才能查询数据,十分不便. 为了让DBA免于日常繁琐的工作, ...

  7. 【GStreamer开发】GStreamer播放教程01——playbin2的使用

    目标 我们前面已经使用过了playbin2这个element,它可以让我们做的很少而实现很多.本教程会展示当这个element的默认设置在一些特殊情形下不符合我们的需求是可以做的一些深度定制,我们会看 ...

  8. Django 高级视图

    一.Django限制请求method 常用的请求method: GET请求:GET请求一般用来向服务器索取数据,但不会向服务器提交数据,不会对服务器的状态进行更改.比如向服务器获取某篇文章的详情. P ...

  9. Ubuntu12.10添加matlab启动器

    首先我们要了解,Ubuntu 的 Dash 里所有程序都是在 /usr/share/applications 中的,所以我们的思路很简单——建一个类似于“快捷方式”一样的东西扔进去就好了. 1. 终端 ...

  10. JWT知识整理

    JSON Web Token:(https://jwt.io/) JSON Web Token(JWT)是一个开放式标准(RFC 7519),它定义了一种紧凑(Compact)且自包含(Self-co ...