一、数据类型
1.概述
为了便于把数据分成所需内存大小不同的数据,充分利用存储空间,于是定义了不同的数据类型。
2.变量的数据类型
var age = 10; //数字型
var areYouOk = '是'; //字符串
JS的变量数据类型是只有程序在运行过程中,根据等号右边的值来确定的
var x = 6; //x为数字
var x = "Bill"; //x为字符串
3.数据类型的分类
数据类型分为两类:
简单数据类型(Number,String,Boolean,Undefined,Null)
简单数据类型 | 说明 | 默认值 |
Number | 数字型,包含整型值和浮点型值 | 0 |
Boolean | 布尔值类型 | false |
String | 字符串类型 | "" |
Undefined | var a;声明了变量a但没有给值,此时a = undefined | undefined |
Null | var a = null;声明了变量a为空值 | null |
①.数字型Number
数字类型既可以用来保存整数值,也可以保存小数(浮点数)
var age = 21; //整数
var age = 21.1011; //小数
1.1数字型进制
程序中数字前面加0 表示八进制
程序中数字前面加0x 表示十六进制
1.2数字型范围
最大值、最小值
alert(Number.MAX_VALUE); //1.7976931348623157e+308
alert(Number.MIN_VALUE); //5e-324
1.3数字型三个特殊值
alert(Infinity); //Infinity 无穷大,大于任何数值
alert(-Infinity); //-Infinity 无穷小,小于任何数值
alert(NaN); //NaN Not a number,代表一个非数字
1.4 isNaN
用来判断非数字,并且返回一个值 如果是数字返回的是false,如果不是数字返回true
console.log(isNaN(1)); //false
console.log(isNaN('Hello')); //true
②.字符串类型String
字符串型可以是引号中的任意文本,其语法为双引号"" 和 单引号''
2.1字符串引号嵌套
外双内单,外单内双
var str1 = "内双‘外单’,内单外双";
console.log(str1);
var str2 = '内双"外单",内单外双';
console.log(str2);
2.2字符串转义符
转义符都是\开头的
转义符 | 解释说明 |
\n | 换行符,n是newline |
\\ | 斜杠\ |
\' | ' 单引号 |
\" | " 双引号 |
\t | tab 缩进 |
\b | 空格,b是blank |
2.3字符串长度
字符串是由若干字符组成的,这些字符的数量就是字符串的长度。通过字符串的length属性可以获取整个字符串的长度。
var str = 'my name is Tom';
console.log(str.length);
2.4字符串拼接
- 多个字符串之间可以使用+进行拼接,其拼接方式为字符串+任何类型=拼接之后的新字符串
- 拼接前会把与字符串相加的任何类型转成字符串,再拼接成一个新的字符串
console.log('hello' + ' ' + 'world');
var age = 20; //变量不要写到字符串里面
console.log('我' + age +'岁');
口诀:数值相加,字符相连
③.布尔型Boolean
布尔类型有两个值:true和false
④.undefined和null
var str;
console.log(str); //undefined
console.log(str + 1); //NaN
var space = null;
console.log(space + '666');//null666
console.log(space + 1); // 1
复杂数据类型(object)
获取变量数据类型
1.获取检测变量的数据类型
typeof用来获取检测变量的数据类型
var num = 10;
console.log(typeof num); //number
var str = 'abc';
console.log(typeof str);//string
var flag = true;
console.log(typeof flag); //boolean
var vari = undefined;
console.log(vari);//undefined
var vara = null;
console.log(typeof vara);//object
var age = prompt('请输入年龄:');
console.log(age);
console.log(typeof age);
prompt取得值是字符型
2.字面量
固定值的表示法
- 数字字面量:1,2
- 字符串字面量:‘abc’
- 布尔字面量:true,false
数据类型的转换
把一种数据类型的变量转换成另外一种数据类型
1.转换为字符串类型
方式 | 说明 | 案例 |
toString() | 转成字符串 | var num = 1;alert(num.toString()); |
String()强制转换 | 转成字符串 | var num = 1;alert(String(num)); |
加号拼接字符串 | 和字符串拼接的结果都是字符串 | var num = 1;alert(num+"字符串"); |
转换为数字型
方式 | 说明 | 案例 |
parselnt(string)函数 | 将string类型转成整数数值型 | parselnt('78') |
parseFloat(string)函数 | 将string类型转成浮点数数值型 | parseFloat('11.11') |
Number()强制转换函数 | 将string类型转成数值型 | Number('11') |
js隐式转换(- * / ) | 利用算数运算隐式转换为数值型 | '11'-0 |
1.parselnt(变量)
var age = prompt('请输入年龄:');
console.log(parseInt(age));
console.log(parseInt('3.14'));//3 得到的是整数
console.log(parseInt('120px'));//120 会去掉单位
2.parseFloat(变量)
console.log(parseFloat('3.14'));//3.14
console.log(parseFloat('120px'));//120
// 3.Number()
var str = '123';
console.log(Number(str)); //123
console.log(Number('123')); //123
// 4.算数运算
console.log('12' - 0); //12
console.log('12' * 1); //12
console.log('12' / 1); //12
转换为布尔型
方式 | 说明 | 案例 |
Boolean()函数 | 其他类型转成布尔值 | Boolean('true); |
代表空、否定的值会被转换为false,如:''、0、NaN、null、undefined
其余值都会被转换为true
标识符、关键字、保留字
1.标识符:开发人员为变量、属性、函数、参数取的名字。
标识符不能是关键字或保留字。
2.关键字:JS本身已经使用了的字,不能再用它们充当变量名、方法名。
包括:break、case、catch、continue、default、delete、do、else、finally、for、function、if、in、instanceof、new、return、switch、this、throw、try、typeof、var、void、while、with
3.保留字:预留的“关键字”
包括:boolean、byte、char、class、const、debugger、double、enum、export、extends、fimal、float、goto、implements、import、int、interface、long、mative、package、private、protected、public、short、static、super、synchronized、throws、transient、volatil
标签:console,log,JavaScript,数据类型,Number,var,字符串 From: https://blog.51cto.com/u_15910619/5983395