博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js-数据类型学习总结
阅读量:4292 次
发布时间:2019-05-27

本文共 2582 字,大约阅读时间需要 8 分钟。

未赋值的数据为undefined,例如:

var oTemp;

alert(oTemp == undefined); //返回true

var oTemp;

alert(typeof oTemp); //输出为 “undefined"

如果函数没有返回值,则默认为undefined,例如:

function testFunc() {}

alert(testFunc() == undefined); //输出为 “true"

alert(null == undefined); //输出为 “true"

布尔类型

尽管false不等于0,但在用于判断时,0是会被转换为false。例如:

if(0){ alert("0会被转换为false"); }

空字符串将被转换为false,例如:

if(""){ alert("空字符串被转换为false"); } //将会弹出警告框

if("www.itxueyuan.com/javascript/"){ alert("非空字符串将被转换为true"); } //将会弹出警告框

if("false"){ alert("字符串 false 同样会被转换为true"); } //将会弹出警告框

布尔类型

尽管false不等于0,但在用于判断时,0是会被转换为false。例如:

if(0){ alert("0会被转换为false"); }

空字符串将被转换为false,例如:

if(""){ alert("空字符串被转换为false"); } //将会弹出警告框

if("www.itxueyuan.com/javascript/"){ alert("非空字符串将被转换为true"); } //将会弹出警告框

if("false"){ alert("字符串 false 同样会被转换为true"); } //将会弹出警告框

数字类型

几种数字的表示方法

var iNum = 55;

var iNum = 070; //八进制070等于十进制的56

var iNum = 0x1f; //十六进制0x1f等于十进制31

var iNum2 = 0xAB; //十六进制0xAB等于171

var fNum = 3.125e7; //3.125 × 107, 也就是 3.125 × 10 × 10 × 10 × 10 × 10 × 10 × 10.

一些常量数字:

Number.MAX_VALUE //Javascript所能表示的数字的最大值

Number.POSITIVE_INFINITY //无穷大

Number.MIN_VALUE //Javascript所能表示的数字的最小值

Number.NEGATIVE_INFINITY //无穷小

函数isFinite用于判断一个数字是否为有穷数

NaN //不是一个数字

alert(NaN == NaN); //输出为 "false"

alert(isNaN("blue")); //输出为 "true"

alert(isNaN("123")); //输出为 "false"

特殊符号表

数字转换为不同进制的字符串示例:

var iNum = 10;

alert(iNum1.toString(2)); //输出为 "1010"

alert(iNum1.toString(8)); //输出为 "12"

alert(iNum1.toString(16)); //输出为 "A"

将字符串转换为数字

var iNum1 = parseInt("1234www.itxueyuan.com"); //结果为 1234

var iNum2 = parseInt("0xA"); //结果为 10

var iNum3 = parseInt("22.5"); //结果为 22

var iNum4 = parseInt("blue"); //结果为 NaN

var iNum1 = parseInt("AF", 16); //结果为 175

var iNum1 = parseInt("10", 2); //结果为 2

var iNum2 = parseInt("10", 8); //结果为 8

var iNum2 = parseInt("10", 10); //结果为 10

var fNum1 = parseFloat("1234blue"); //结果为 1234.0

var fNum2 = parseFloat("0xA"); //结果为 NaN

var fNum3 = parseFloat("22.5"); //结果为 22.5

var fNum4 = parseFloat("22.34.5"); //结果为 22.34

var fNum5 = parseFloat("0908"); //结果为 908

var fNum6 = parseFloat("blue"); //结果为 NaN

类型转换

var b1 = Boolean(""); //false – empty string

var b2 = Boolean("hi"); //true – non-empty string

var b3 = Boolean(100); //true – non-zero number

var b4 = Boolean(null); //false - null

var b5 = Boolean(0); //false - zero

var b6 = Boolean(new Object()); //true – object

Number(false) //0Number(true) //1

Number(undefined) //NaN

Number(null) //0

Number("5.5") //5.5

Number("56") //56

Number("5.6.7") //NaN

Number(new Object()) //NaN

Number(100) //100


加关注,定时推送,互动精彩多,若你有更好的见解,欢迎留言探讨!

本文为头条号作者发布,不代表今日头条立场。

转载地址:http://qhggi.baihongyu.com/

你可能感兴趣的文章
消息队列 mq 必会面试题
查看>>
线程池的工作原理是啥?能手写一个线程池吗?
查看>>
Java程序内存的简单分析
查看>>
Javascript单例模式概念与实例
查看>>
SQL NULL 函数
查看>>
多例设计模式
查看>>
WebView的JavaScript与本地代码三种交互方式
查看>>
WebView的JavaScript与本地代码三种交互方式
查看>>
Android Studio里面配置Tesseract
查看>>
深入浅出JavaScript之this
查看>>
Android include标签的使用注意事项
查看>>
final成员变量和final局部变量
查看>>
Android数据加密之异或加密算法
查看>>
greenDao好的示例网址
查看>>
Android自定义控件--仿安全卫士中的一键加速
查看>>
Android Tools Attributes,让布局设计所见即所得
查看>>
Android内存泄露的原因
查看>>
Java并发总结
查看>>
JavaScript筑基篇(二)->JavaScript数据类型
查看>>
干货:Java几种线程池的分析和使用。
查看>>