JavaScript-强制类型转换
因为没有学过其他编程语言,因此作为我的第一门编程“母语”我在这就不举其他编程语言的例子了,JavaScript这个动态类型脚本语言的变量号称是没有类型的,那么我们怎么转换他的变量呢?而且还要强行转换。
JavaScript的变量的确是没有类型的,就是说你用var声明变量后,可以随便给变量赋值,不会有任何问题。可是赋给变量的值本身自己是有类型地,例如String,Object,Boolean和Number等。所以JavaScript的变量本身还是有类型转换的,当然很多时候JavaScript解析引擎会默认处理很多的类型转换。不过有时候也需要强行转换数据类型,最常见的就是:“”+数字 +数字,这种情况会生成字符串累加。
- Number函数,可以将数值字符串,对象,和布尔型变量强制转换成数字型的。
- Object函数,可以将数值字符串,数字,和布尔型变量强制转换成对象型的。
- String函数,可以将数字,对象,和布尔型变量强制转换成字符串型的。
- Boolean函数,可以将数值字符串,对象,和数字型变量强制转换成布尔型的。
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <meta http-equiv="X-UA-Compatible" content="ie=edge">
- <title>JavaScript中的强制类型转换</title>
- </head>
- <body>
- <center>
- <h1>JavaScript中的强制类型转换</h1>
- <hr>
- <br>
- <h5>显示如下变更信息……</h5>
- <pre>
- <script>
- var str = '100';//声明一个字符串变量str,初始值是“100”
- var num = Number(str);//用number强制类型转换将str转换为数字类型并赋值给num变量
- document.writeln(typeof(num) + ':' + num);//打印num的类型和值
- var obj = Object(str);//用object强制类型转换将str转换成对象类型并赋值给obj变量
- document.writeln(typeof(obj) + ':' + obj);//打印obj的类型和值
- var bool = Boolean(str);//用Boolean强制类型转换将str转换成布尔类型并赋值给bool变量
- document.writeln(typeof(bool) + ':' + bool);//打印bool的类型和变量
- document.writeln();
- var num = 100 ;//声明一个字符串变量num,初始值为100
- var str = String(num);//用string强制类型转换将num转换为字符类型并赋值给str变量
- document.writeln(typeof(str) + ':' + str);
- var bool = Boolean(num);
- document.writeln(typeof(bool) + ':' + bool);
- var obj = Object(num);
- document.writeln(typeof(obj) + ':' + obj);
- document.writeln();
- var bool = true;
- var str = String(bool);
- document.writeln(typeof(str) + ':' + str);
- var num = Number(bool);
- document.writeln(typeof(num) + ':' + num);
- var obj = Object(bool);
- document.writeln(typeof(obj) + ':' + obj);
- document.writeln;
- var obj = {};
- var str = String(obj);
- document.writeln(typeof(str) + ':' + str);
- var num = Number(obj);
- document.writeln(typeof(num) + ':' + num);
- var bool = Boolean(obj);
- document.writeln(typeof(bool) + ':' + bool);
- </script>
- </pre>
- </center>
- </body>
- </html>
摘自《JavaScript实力精通》
JavaScript-强制类型转换的更多相关文章
- JS基础_强制类型转换-String
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- JavaScript学习10 JS数据类型、强制类型转换和对象属性
JavaScript学习10 JS数据类型.强制类型转换和对象属性 JavaScript数据类型 JavaScript中有五种原始数据类型:Undefined.Null.Boolean.Number以 ...
- javascript中强制类型转换
javascript开发过程中,强制类型转换一般发生在条件判断和==运算符.其他情况,发生的类型转换(与这两种情况也是基本类似,属于万变不离其宗的范畴),暂不讨论. == 双等运算符 考虑代码: a ...
- 《你不知道的JavaScript》整理(六)——强制类型转换
JavaScript中通常分为两种类型转换,"隐式强制类型转换"(implicit coercion)和"显式强制类型转换"(explicit coercion ...
- Javascript对象Oject的强制类型转换
众所周知Javascript作为一种动态类型,弱类型的脚本语言其数据类型在很多时候都会发生类型转换.而这些类型转换往往都是隐式的,这让我们在使用Js的时候会产生许多麻烦.而Js的基础数据类型的转换在此 ...
- 谈 JavaScript 中的强制类型转换 (2. 应用篇)
这一部分内容是承接上一篇的, 建议先阅读谈 JavaScript 中的强制类型转换 (1. 基础篇) 前两章讨论了基本数据类型和基本包装类型的关系, 以及两个在类型转换中十分重要的方法: valueO ...
- 带你玩转JavaScript中的隐式强制类型转换
正题开始前我想先抛出一个问题,==和===有什么区别?可能一般人会想,不就是后者除了比较值相等之外还会比较类型是否相等嘛,有什么好问的,谁不知道?!但是这样说还不够准确,两者的真正区别其实是==在比较 ...
- 详细理解javascript中的强制类型转换
将值从一种类型转换为另一种类型通常称为类型转换,这是显式的情况:隐式的情况称为强制类型转换,JavaScript 中的强制类型转换总是返回标量基本类型值,如字符串.数字和布尔值. 如何理解: 类型转换 ...
- javascript的强制类型转换
1.toString (1)调用toString方法 Array是将数组中的每个元素字符串化,并使用逗号拼接起来 object返回的是内部属性[[Class]]的值,[object Object] n ...
- javascript之强制类型转换
在javascript中,常会发生强制类型转换的情况有以下几种 字符串拼接 var a = 1; var b = a + '1'; console.log(b); //11 ==运算符 var a = ...
随机推荐
- springmvc入门之HelloWorld篇
springmvc是一个基于spring的mvc框架,各种优点啥的用过就知道了.下面开始讲HelloWorldController的实现. 1.开发环境搭建<导jar包+配置文件> 1.1 ...
- Sequelize-nodejs-9-Scopes
Scopes作用域 Scoping allows you to define commonly used queries that you can easily use later. Scopes c ...
- python基础整理2——Linux
Linux 目录 /:根目录,一般根目录下只存放目录 /bin./usr/bin: 可执行二进制文件的目录,如常用的命令ls.tar.mv.cat等 /boot:放置linux系统启动时用到的一些文件 ...
- chrome://命令
一些常用的命令: chrome://version 显示当前版本 chrome://flags 实验项目,加“#项目名称”锚点可以直接定位到项目 chrome://settings 设置,下图是设置定 ...
- java基础 三 概念和java程序的结构.
一.java的一些概念: JRE(java runtime environment):java程序运行环境,如果要运行java程序,需要jre支持.jre里包含jvm JDK(java devel ...
- windows 下nginx配置php支持
修改nginx配置 location ~ \.php$ { root D:/Learn/php/test/; fastcgi_pass ; fastcgi_index index.php; fastc ...
- 在存放源程序的文件夹中建立一个子文件夹 myPackage。例如,在“D:\java”文件夹之中创建一个与包同名的子文件夹 myPackage(D:\java\myPackage)。在 myPackage 包中创建一个YMD类,该类具有计算今年的年份、可以输出一个带有年月日的字符串的功能。设计程序SY31.java,给定某人姓名和出生日期,计算该人年龄,并输出该人姓名、年龄、出生日期。程序使用YM
题目补充: 在存放源程序的文件夹中建立一个子文件夹 myPackage.例如,在“D:\java”文件夹之中创建一个与包同名的子文件夹 myPackage(D:\java\myPackage).在 m ...
- ping不通linux服务器排查
很久没启动linux了,今天打开试了下 ssh root@192.168.229.128 ping 一直超时 老规矩挨着来排查 检查网络设备器改为Net 模式 重启网络服务 service netw ...
- fdisk与parted分区
我所接触的linux分区分为两种,一种是使用fdisk分区,另外一种是parted分区.前者是针对MBR模式分区的,后者是针对GPT模式分区的 fdisk分区: fdisk -l ---->查看 ...
- Angular7教程-01-Angular开发环境配置
本教程基于angular7(2018-11-04) 1. 安装node.js 下载地址: http://nodejs.cn/download/ 下载对应自己操作系统的版本安装即可. 2.安装 angu ...