一、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.函数类型 function
5.对象
对象的基本操作有:
1.添加属性
2.添加方法(函数)
(1).obiect (window,document)
(2).数组
a.往数组里添加东西可以利用数组原本的性质
arr.push()
b.利用对象的性质添加属性和方法
(3).json
(4).null
6.未定义 undefined
二、数据类型的转换
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(c)); //200.45
var c= \'200.45元\' alert(parseFloat(c)); //200.45
var c= \'200.45px\' alert(parseFloat(c)); //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
对于符号不管是隐式还是显示转换都不能将其转换