文章目录
- 一、JS数据类型
- 1.数字 number
- 2.字符串 string
- (1).求字符串的长度
- 3.布尔值 boolean
- 4.对象object(不是基本数据类型)
- (1).obiect (window,document)
- (2).数组
- (3).json
- (4)function
- 5.null
- 6.未定义 undefined
- 7. symbol
- 二、数据类型的转换
- 1.Number() 字符串转成数字
- (1).对于前面有符号的可将符号转成对应的数字(只针对加减)
- (2).对于数组
- (3).对于函数
- (4).对于json
- (5).对于null
- (6).对于未定义
- (7).对于空的josn
- 2.parseInt() 解析为整型
- (1).对于布尔值
- (2).对于空的函数
- (3).parseFloat() 解析为浮点型
- 三、数据类型中的隐式转换
- 1. - * / % 变成数字
- 2.++ -- 变成数字
- 3.+变成字符串
- 4.数字比较与字符串比较
- 4.取反
- 5.===判断
一、JS数据类型
ECMAScript 是数据类型的一个标准及核心
首先我先提一下HTML的标签类型
HTML标签类型: block,inline,inline-block,table
注意:在JS里我们需要利用typeof来判断数据类型
JS数据类型:
1.数字 number
2.字符串 string
可对字符串进行的操作有:
(1).求字符串的长度
string.length
(2).求字符串所在的位置
string.charAt(2)
找到该字符串中从左往右第三个字符所在的位置
3.布尔值 boolean
true – 真
false – 假
可以进行if或者for语句的判断
4.对象object(不是基本数据类型)
对象的基本操作有:
1.添加属性
2.添加方法(函数)
(1).obiect (window,document)
(2).数组
a.往数组里添加东西可以利用数组原本的性质
arr.push()
b.利用对象的性质添加属性和方法
(3).json
(4)function
5.null
- 是js关键字,表示“定义了但是为空”,在js代码中,可以放心的使用null 关键字来获取null 值
- null类型只有一个值,就是null,语义表示空值。
6.未定义 undefined
- 表示未定义,该类型只有一个值就是undefined ,任何变量在赋值之前都是undefined类型,且值也是undefined·
- 在js代码中,undefined是一个变量,不是关键字,为了避免篡改,使用void 0 来获取值为undefined 的变量
- 一般可以使用全局变量undefined(就是名为undefined的这个变量)来表达这个值
- 在实际编程中,不会将变量赋值为undefined,这样可以保证所有值为undefined的变量,都是从未赋值的自然状态
7. symbol
二、数据类型的转换
1.Number() 字符串转成数字
(1).对于前面有符号的可将符号转成对应的数字(只针对加减)
var a=‘100’; alert(Number(a)); //100
var a=’+100;’ alert(Number(a)); //100
var a=’-100;’ alert(Number(a)); //-100
var a=‘0’; alert(Number(a)); //0
var a=’*100;’ alert(Number(a)); //NaN
(2).对于数组
var a=[]; alert(Number(a)); //0
var a=['']; alert(Number(a)); //0
var a=[123]; alert(Number(a)); //123
var a=['123']; alert(Number(a)); //123
var a=[1,2,3]; alert(Number(a)); //NaN
(3).对于函数
var a = function(){
alert(1);
} //NaN
(4).对于json
var json = {
abc:123;
}
alert(Number(json)); //NaN
(5).对于null
var a=null;
alert(Number(a)); //0
(6).对于未定义
var a;
alert(Number(a)); //NaN
(7).对于空的josn
var json = { };
alert(Number(json)); //NaN
2.parseInt() 解析为整型
注意:是从左到右依次转换
var b = ‘100px’ alert(parseInt(b)); //100
var b = ‘100px113’ alert(parseInt(b)); //100
var b = ‘+100px’ alert(parseInt(b)); //100
var b = ‘-100px’ alert(parseInt(b)); //-100
var b = ‘12.34’ alert(parseInt(b)); //12
var b = ‘200元’ alert(parseInt(b)); //200
(1).对于布尔值
var b = true alert(parseInt(b)); //NaN
(2).对于空的函数
var b = function(){} alert(parseInt(b)); //NaN
(3).parseFloat() 解析为浮点型
var c= ‘200.45’ alert(parseFloat©); //200.45 var c= ‘200.45元’ alert(parseFloat©); //200.45
var c= ‘200.45px’ alert(parseFloat©); //200.45
三、数据类型中的隐式转换
1. - * / % 变成数字
alert(‘200’-3); //197
2.++ – 变成数字
var a=‘10’;
a–;
alert(a); //9
3.+变成字符串
alert(200+‘3’) //2003
4.数字比较与字符串比较
alert(‘10’>9) //true
alert(‘10’>‘9’) //false
alert(‘10000’>‘9’) //false
比较大小的是字符串的第一个字符
4.取反
注意:取反是将!右边的数据转换成布尔值
alert(!true) //false
alert(!100) //false
alert(!‘0k’) //false
5.===判断
==表示判断最终值
===表示先判断数据类型,再判断值
alert(‘2’==2) //true
alert(‘2’===2) //false
##6.符号
alert(Number(’…’)); //NaN
alert(’…’-9) ; //NaN
对于符号不管是隐式还是显示转换都不能将其转换