JavaScript的学习之强制类型转换
目录
一、什么是强制类型转换
二、其他类型转化为String类型
方式一:调用被转化数据类型的toString()方法
方式二:调用String函数,并将我们要转换的数据添加进去为参数
三、其他类型转化为Number类型
方式一:使用Number()函数
方式二:parseInt()和parseFloat()函数
四、其他类型转化为Boolean类型
使用Boolean()函数
一、什么是强制类型转换
指的是将一个数据转化成其他数据类型,主要是转化为String、Boolean、Number
二、其他类型转化为String类型
方式一:调用被转化数据类型的toString()方法
注意:null和undefined没有toString()方法
<script>var a = 123;var b = true;var c = null;var d = undefined;a = toString(a);b = toString(b);c = toString(c);d = toString(d);console.log(typeof a);console.log(typeof b);console.log(typeof c);console.log(typeof d); console.log(c);console.log(d);
</script>

方式二:调用String函数,并将我们要转换的数据添加进去为参数
对于Number和Boolean实际上就是调用了toString()方法
而对于null和undefined是直接将他们转换位"null"和"undefined"
<script>var a = 123;var b = true;var c = null;var d = undefined;a = String(a);b = String(b);c = String(c);d = String(d);console.log(typeof a);console.log(typeof b);console.log(typeof c);console.log(typeof d); console.log(c);console.log(d);
</script>

三、其他类型转化为Number类型
方式一:使用Number()函数
转化字符串:
1.内容是纯数字就直接转化为数字
2.内容是非数字则转化为NaN
3.内容为空或者空格则转化为0
转化布尔值:
1.true为1,false为0
转化Null:
1.null为0
转化Undefined:
1.undefined为NaN
<script>var a = 123;var b = true;var c = null;var d = undefined;a = Number(a);b = Number(b);c = Number(c);d = Number(d);console.log(typeof a);console.log(typeof b);console.log(typeof c);console.log(typeof d);console.log(c);console.log(d);
</script>

方式二:parseInt()和parseFloat()函数
为了解决字符串的转换,由于方式一存在局限性
例如:要将123px转化为Number类型就不可以
<script>var a = "123px";var a1 = "123.4px"a = parseInt(a);a1 = parseInt(a1);console.log(typeof a);console.log(typeof a1);console.log(a);console.log(a1);
</script>

<script>var a = "123px";var a1 = "123.4px"a = parseFloat(a);a1 = parseFloat(a1);console.log(typeof a);console.log(typeof a1);console.log(a);console.log(a1);
</script>

四、其他类型转化为Boolean类型
使用Boolean()函数
1.数字转换,除了0和NaN,其余都是true
2.字符串转换,除了空串,其余都是true
3.null和defined都会转化为false
4.对象也会转化为true
<script>var a = 123var a1 = 0var a2 = NaNa = Boolean(a)a1 = Boolean(a1)a2 = Boolean(a2)console.log(a)console.log(a1)console.log(a2)
</script>

上一节的学习请参考下面连接:
JavaScript的学习之旅之基本数据类型
这章关于JS的数据类型转换大致就学到这了,感谢关注!!!
相关文章:
JavaScript的学习之强制类型转换
目录 一、什么是强制类型转换 二、其他类型转化为String类型 方式一:调用被转化数据类型的toString()方法 方式二:调用String函数,并将我们要转换的数据添加进去为参数 三、其他类型转化为Number类型 方式一:使用Number()函数…...
天润融通:AI赋能客户体验,推动企业收入和业绩增长
“客户体验已经成为全球企业差异化的关键。人工智能与数据分析等创新技术正在加速推动企业在客户体验计划中取得成功,以保持领先地位”。Customer Insights & Analysis 研究经理Craig Simpson说道。 客户体验 (CX,Customer Experience) 是客户在与企…...
Android与服务器交互的方式中的对称加密和非对称加密(kotlin)
Android与服务器交互中的对称加密和非对称加密(kotlin) 引言 在 Android 与服务器交互时,我们常常需要进行数据传输,为了保证数据的安全性,我们可以使用加密算法来保护数据。在本文中,我们将介绍如何在 K…...
epoch和batch的区别
在机器学习和深度学习中,“epoch”(批次)和"batch"(批量)是两个重要的概念,它们分别表示训练过程中的不同阶段和数据处理方式。 Epoch(批次) 定义:Epoch&…...
非递归创建二叉查找树
非递归创建二叉查找树代码。 #include <stdio.h> #include <stdlib.h>typedef int KeyType; typedef struct BSTNode{KeyType key;struct BSTNode *lchild,*rchild; }BSTNode,*BiTree;//王道书上的递归写法,代码简单,但是理解有难度 //int …...
摄影师危!AI绘画即将降维打击摄影行业
你还以为AI绘画影响的只是插画师行业吗?错了,摄影行业也即将面临技术洗牌 话不多说,先看一下这几张图 你能一眼看出这是AI画的迪丽热巴吗? 你是不是还以为AI绘画只能画点动漫艺术风格?那你就低估了AI的发展速度&…...
ts 中class
class obj{name:stringage:numberconstructor(name:string,age:number){this.name namethis.age age}setname(){this.name 111 } } //新建实例 //构造方法中的this指向调用者,谁new就指向谁 //这个this 指向 o,打印this,可以获取到o身上的…...
深度解析RocketMq源码-高可用存储组件(四)Dledger框架日志同步流程
1.绪论 在深度解析RocketMq源码-高可用存储组件(一) raft协议详解-CSDN博客 中讲过,raft协议中,日志同步主要有两个地方,一个是leader会跟follower同步数据,另一个是在新leader诞生的时候,会与…...
ONLYOFFICE 文档开发者版 8.1:API 更新
随着版本 8.1 新功能的发布,我们更新了编辑器、文档生成器和插件的 API,并添加了 Office API 板块。阅读下文了解详情。 ONLYOFFICE 文档是什么 ONLYOFFICE 文档是一个功能强大的文档编辑器,支持处理文本文档、电子表格、演示文稿、可填写…...
Activemq单节点在Windows下的配置部署
1.环境信息 服务器信息jdk版本activemq版本备注Windows Server 2008R2 Enterprisejdk-17_windows-x64_bin.exeapache-activemq-5.18.42.jdk配置 1.下载jdk 地址: Java Downloads | Oracle 中国 2.上传至Windows服务器,点击安装,在选择安装目录页面,选择合适的安装目录即…...
SpringBoot-注解@ImportResource引入自定义spring的配置xml文件和配置类
1、注解ImportResource 我们知道Spring的配置文件是可以有很多个的,我们在web.xml中如下配置就可以引入它们: SprongBoot默认已经给我们配置好了Spring,它的内部相当于已经有一个配置文件,那么我们想要添加新的配置文件怎么办&am…...
GitLab配置免密登录之后仍然需要Git登录的解决办法
GitLab配置免密登录之后仍然需要Git登录的解决办法 因为实习工作需要,要在本地拉取gitlab上的代码,设置了密钥之后连接的时候还需要登录的token,摸索之后有了下面的解决办法。 方法一: 根据报错的提示,去网站上设置个人…...
探索小众爱好:打造个人韧性与特色之路
在这个信息爆炸的时代,我们很容易陷入“千篇一律”的漩涡中,无论是生活方式还是兴趣爱好,似乎都趋向于某种“流行”或“热门”。然而,真正的个性与魅力,往往来源于那些不为大众所知的小众爱好。今天,我想和…...
GitHub使用教程(小白版)
看一百篇文章不如自己写一篇 第一步:注册和安装 注册GitHub账号 访问 GitHub官网。点击右上角的 "Sign up" 按钮。按照提示输入你的邮箱、创建用户名和密码,完成注册。 安装Git 访问 Git官网。下载并安装适用于你操作系统的Git。安装…...
深度解析SD-WAN在企业组网中的应用场景
在现代企业快速发展的网络环境中,SD-WAN技术不仅是实现企业各站点间高效连接的关键,也是满足不同站点对互联网、SaaS云应用和公有云等多种业务需求的理想选择。本文将从企业的WAN业务需求出发,对SD-WAN的组网场景进行全面解析,涵盖…...
【INTEL(ALTERA)】Eclipse Nios II SBT 无法从模板创建新应用程序和 BSP
目录 说明 解决方法 说明 您应该能够创建新的应用程序和 BSP 模板包含以下步骤: 选择 Nios II应用程序和 BSP 来自模板。选择您的.sopcinfo 文件并选择模板。从您的工作区单击 选择现有的 BSP 项目。单击 创建。选择所需的 BSP 选项。单击 完成。 但是…...
Vue_cli搭建过程项目创建
概述 vue-cli 官方提供的一个脚手架,用于快速生成一个 vue 的项目模板;预先定义 好的目录结构及基础代码,就好比咱们在创建 Maven 项目时可以选择创建一个 骨架项目,这个骨架项目就是脚手架,我们的开发更加的快速&am…...
面试题4:POST 比 GET 安全?
不是。HTTP就没有加密功能。 我们知道 GET一般将参数放到URL的查询字符串中,如果是实现登录页面,我们的用户名和密码就直接显示到浏览器的地址栏中了,此时就会轻易的被他人获取账号密码,很不安全。而POST会把参数放到 body 里&am…...
Github生成Personal access tokens及在git中使用
目录 生成Token 使用Token-手工修改 使用Token-自动 生成Token 登录GitHub,在GitHub右上角点击个人资料头像,点击Settings → Developer Settings → Personal access tokens (classic)。 在界面上选择点击【Generate new token】,填写如…...
【BUG记录】条件查询没有查询结果 || MybatisPlus打印查询语句
结论 先说结论,查询没有结果,可能是数据库连接,数据问题之类,最有可能的根本原因是查询语句问题,需要想办法检查查询语句,使用mybatisPlus等自动生成查询语句的框架不能直接看语句,可以依靠日志…...
5个步骤掌握UE4SS:虚幻引擎游戏定制与脚本开发完全指南
5个步骤掌握UE4SS:虚幻引擎游戏定制与脚本开发完全指南 【免费下载链接】RE-UE4SS Injectable LUA scripting system, SDK generator, live property editor and other dumping utilities for UE4/5 games 项目地址: https://gitcode.com/gh_mirrors/re/RE-UE4SS …...
手把手教你优化SiC MOSFET模块:从铜带键合到双面散热的5个关键技术
SiC MOSFET功率模块封装优化实战:五大关键技术深度解析 在电力电子领域,碳化硅(SiC)MOSFET功率模块正逐步取代传统硅基IGBT,成为高效率、高功率密度应用的首选。然而,要充分发挥SiC材料的性能优势,封装技术面临前所未…...
终极指南:ZoneMinder开源监控系统的架构设计与核心组件解析
终极指南:ZoneMinder开源监控系统的架构设计与核心组件解析 【免费下载链接】zoneminder ZoneMinder is a free, open source Closed-circuit television software application developed for Linux which supports IP, USB and Analog cameras. 项目地址: https…...
突破学术写作瓶颈:WPS-Zotero革新文献管理工作流
突破学术写作瓶颈:WPS-Zotero革新文献管理工作流 【免费下载链接】WPS-Zotero An add-on for WPS Writer to integrate with Zotero. 项目地址: https://gitcode.com/gh_mirrors/wp/WPS-Zotero 在学术写作的征途上,文献管理如同隐形的绊脚石&…...
网盘直链下载助手完整教程:如何轻松获取百度、阿里云盘等八大平台真实下载地址
网盘直链下载助手完整教程:如何轻松获取百度、阿里云盘等八大平台真实下载地址 【免费下载链接】Online-disk-direct-link-download-assistant 可以获取网盘文件真实下载地址。基于【网盘直链下载助手】修改(改自6.1.4版本) ,自用…...
Proxifier规则配置避坑指南:如何精准放行微信/QQ流量,让你的渗透测试更丝滑
Proxifier规则配置实战:精准分流社交软件流量的高阶技巧 渗透测试工程师们对Proxifier这款工具应该都不陌生——它就像网络流量的交通指挥官,能精准地将不同应用程序的请求导向代理或直连通道。但实际使用中,不少人都遇到过这样的尴尬&#x…...
RStudio Server部署与运维实战:从零搭建到高效管理
1. 环境准备:搭建RStudio Server的基石 在开始部署RStudio Server之前,我们需要确保服务器环境已经准备就绪。就像盖房子需要打地基一样,这一步决定了后续所有工作的稳定性。我遇到过不少因为环境问题导致的安装失败案例,大多数都…...
别再死记硬背!用拖拽和右键菜单玩转汇川CodeSys网络与硬件组态
汇川CodeSys图形化组态实战:拖拽与右键菜单的高效玩法 第一次打开汇川CodeSys的组态界面时,那些密密麻麻的菜单和复杂的参数设置确实让人望而生畏。但当我发现可以用鼠标拖拽完成90%的配置工作时,整个PLC编程体验彻底改变了——就像从DOS命令…...
别再死记硬背了!用Halcon的vector_angle_to_rigid算子搞定视觉定位,附完整代码
视觉定位实战:用Halcon的vector_angle_to_rigid算子避开几何变换的三大误区 在工业视觉项目中,刚体变换是坐标转换的核心技术,但许多工程师在使用Halcon的vector_angle_to_rigid算子时,常陷入三个致命误区:误认为旋转…...
SDL2项目实战:用Conan一键集成SDL_image库(附CMake配置避坑指南)
SDL2项目实战:用Conan一键集成SDL_image库(附CMake配置避坑指南) 在开发跨平台C游戏或多媒体应用时,处理多种图片格式是刚需。SDL2原生仅支持BMP格式,而现代项目往往需要JPEG、PNG甚至WebP等更高效的格式。SDL_image库…...
