一、数据类型
1、什么是数据类型
在计算中,不同的数据所需占用的储存空间是不同的,为了便于把数据分成所需内存大小不同的数据充分储存空间,于是定义了不同的数据类型
2、变量的数据类型
变量是用来储存值所在处,他们有名字和数据类型,变量的数据类型决定了如何将代表
这些值的位存储到计算机的内存中。javascript是一种弱类型或者说动态语言。这意味着
不用提前声明变量的类型,在程序运行过程中,类型会被自动确定。
3、基本数据类型
(1) Number: 数字型,包含整型值和浮点型值,如21,0.21 , 默认值为0;
数字型进制: 最常见的进制二进制、八进制、十进制、十六进制
1) 数字型的最大值
console.log(Number.MAX_VALUE);
2) 数字型的最小值
console.log(Number.MIN_VALUE);
数字型三个特殊值
3)无穷大
console.log(Number.MAX_VALUE*2);// Infinity 无穷大
4)无穷小
console.log(-Number.MAX_VALUE*2);// -Infinity 无穷小
5)非数字
console.log('pink' - 100); //NaN
(2)Boolean: 布尔值类型,如ture,false,等价与1和0; 默认值为Flase
布尔型 Boolean
两个值:true(真、对) 和 false(假、错)
布尔型和数字型相加的时候,true的值为1,false的值为0.
代码展示:
var flag = true;
var flag1 = false;
console.log(flag+1);//2
console.log(flag1+1);//1
图片展示:
(3)String :字符串类型,如“张三” 注意咱们js里面 字符串都带引号 默认值 ""
字符串型可以是引号中的任意文本,其语法为双引号""和单引号''因为html标签里面的属性使用的是双引号,js这里更推荐使用单引号
代码展示:
var strMSg="枕头睡不醒"; //双引号
var strMSg='枕头睡不着'; //单引号
结果展示:
没有引号的话就会报错,会被认为是js代码,但js没有这些语法
代码展示:
var strMSg=枕头睡不醒;
var strMSg=枕头睡不着;
结果展示:
字符串引号嵌套 (js可以用单引号嵌套双引号,或者用双引号前台单引号,(外双内单,外单内双)
例如:
代码展示:
var str= '枕头睡不着"枕头睡不醒"';
console.log(str);
var str1 = "枕头睡不着'枕头睡不醒'";
console.log(str1);
(4)Undefined:如果一个变量声明未赋值 就是undefined 未定义数据类型 默认值 undefined
例如: var str;声明了变量str但是没有给值,没有初始化,此时a = undefined
代码段:
var str;
console.log(str);
图片展示:
(5)Null var a = null;声明了变量a为空值· 默认值Null
代码展示:
var a = null;
console.log(a);
图片展示:
4、怎么检测数据类型
用 typeof 来检测变量数据类型
代码展示:
var age = prompt('请输入您的年龄')
console.log(age);
console.log(typeof age);
结果展示:
先输入年龄
在查看我们的控制台
这里的18不是数字型,因为prompt 取过来的值是字符型的,所以18也是字符型
通过控制台也显示的字体颜色也可以分辨是哪种字符类型
- 字符串 —— 黑色
- 数字 、布尔类型 —— 蓝色
- null、undefined —— 浅灰色
二、数据类型转换
含义:就是把一种数据类型的变量转换成另外一个数据类型
1、转换为数字型
4个方法
(1)paeseInt(变量),可以把字符型转换为数字型 得到是整数
代码展示:
console.log(parseInt(age));
console.log(parseInt(3.14)); // 3 取整
console.log(parseInt(3.94)); // 3 取整
console.log(parseInt('120px')); //120 会去掉px单位
console.log(parseInt('rem120px')); //NaN
图片展示:
(2)parseFloat 可以把字符型转换为数字型 得到是小数
代码展示:
console.log(parseFloat(3.14)); // 3.14 取小数
console.log(parseFloat(3.94)); // 3.94 取小数
console.log(parseFloat('120px')); //120 会去掉px单位
console.log(parseFloat('rem120px')); //NaN
图片展示:
(3)利用Number(变量)
代码展示:
var str = '123';
console.log(Number(str));
console.log(Number('12'))
图片展示:
(4)利用了算数运算(隐式转换 )
代码展示:
console.log('12'- 0); //12
console.log('123' - '120');
console.log('123' * 1);
图片展示:
2、转换为字符串型
3个方法
(1)把数字型转换为字符串型 格式:变量.toString( )
代码展示:
var num= 10;
var str = num.toString();
console.log(str);
console.log(typeof str);
图片展示:
(2)String()
格式:String(变量)
代码展示:
var num= 10;
console.log(String(num));
图片展示:
(3)拼接字符串的方法实现转换效果
代码展示:
var num= 10;
console.log(num+'');
图片展示:
3、转换为布尔型
就是转成true和false
代表空、否定的值会被转换为false,如“0、NaN、null、undefinef等等
例如
代码展示:
console.log(Boolean('')); //false
console.log(Boolean(0)); //false
console.log(Boolean(NaN)); //false
console.log(Boolean(null)); //false
console.log('---------------------');
console.log(Boolean(undefined)); //false
console.log(Boolean('枕头睡不着')); //true
console.log(Boolean(123)); //true
console.log(Boolean(12)); //true
图片展示: