一:数据类型
1.1、 数字类型(number)
整型
浮点型
NaN 不是数字
1.2、 字符串类型(String)
字符串直接量
转义字符
1.3、布尔类型(boolean)
1.4、Undefined 未定义
1.5、Null 空对象
1.6、对象类型(Object)
二、Typeof操作符
定义:typeof操作符返回一个字符串,表示未经计算的操作数的数据类型。
typeof操作符后跟操作数:
typeof 操作数
typeof (操作数);// 括号是可选的
<scripttype="text/javascript">
var a=2;
document.write(typeofa);// number
var b="123";
document.write(typeofb);// string
var c =false;
document.write(typeofc);// boolean
var d=null;
document.write(typeofd);// object
var f;
document.write(typeoff);// undefined
var e=newArray();
document.write(typeofe);// object
var j=2;
document.write(typeof(typeofj));// string
</script>
三、类型转换
显示转换
1.1、 字符串转换为数字类型
1.1.1、Number(要转换的内容);
<scripttype="text/javascript">
var a="123abc";
document.write(typeofa);// string
var b=Number(a);
document.write(typeofb);// number
document.write(b);// NaN
</script>
1.1.2、parseInt(要转换的内容);
<scripttype="text/javascript">
var a="123.2abc";
document.write(typeofa);// string
var b=parseInt(a);
document.write(typeofb);// number
document.write(b);// 123
</script>
1.1.3、parseFloat(要转换的内容)
<scripttype="text/javascript">
var a="123.2abc";
document.write(typeofa);// string
var b=parseFloat(a);
document.write(typeofb);// number
document.write(b);// 123.2
</script>
1.2、其他数据类型转换为字符串
1.2.1、toString(参数):返回对象的字符串
<scripttype="text/javascript">
var num=10;
document.write(num.toString());// 10
document.write(typeof(num.toString()));// string
document.write(num.toString(2));// 1010
document.write(num.toString(8));// 12
document.write(num.toString(16));// a
</script>
1.2.2、String(参数):将任何类型的 值转换为字符串
<scripttype="text/javascript">
var num=10;
document.write(String(num));// 10
document.write(typeof(String(num)));// string
var num1;
document.write(String(num1));// undefined
document.write(typeof(String(num1)));// string
var num2=null;
document.write(String(num2));// null
document.write(typeof(String(num2)));// string
var boo=true;
document.write(String(boo));// true
document.write(typeof(String(boo)));// string
</script>
1.3、其他数据类型转换为布尔值
1.3.1、Boolean(参数):将任何类型的值转换为布尔值
<scripttype="text/javascript">
var num=10;
document.write(Boolean(num));// true
document.write(typeof(Boolean(num)));// boolean
var num1=200-"10px";//
document.write(Boolean(num1));// false
var num2;
doucument.write(Boolean(num2));// false
var num3=null;
document.write(Boolean(num3));// false;
</script>
2、隐式转换
2.1、“+”运算符
<scripttype="text/javascript">
var a=10;
var b='22';
document.write(a+b);
var c=10;
var d=20;
document.write(c+d);
</script>
2.2、“ - ” 运算符
<scripttype="text/javascript">
var a=10;
var b='22';
document.write(b-a);// 12
var c="10";
var d="22";
document.write(d-c);// 12
</script>
三: 类型转换
3.1、显示转换
3.1.1、字符串转换为数字类型
Number(要转换的内容)
parseInt(要转换的内容)
parseFloat(要转换的内容)
3.1.2、其他数据类型转换为字符串
toString(参数)
String(参数)
3.1.3、其他数据类型转换为布尔值
Boolean(参数)
3.2、隐式转换
数据类型
数据类型:就是我们把JS所学用到的东西给他分一下类,(比如我们收拾家里的东西,鞋子放一类,内衣放一类,外套放一类,等等)
3.2.1、数字类型
3.2.1.1整型
二进制:0、1
八进制:0、1、2、3、4、5、6、7
<scripttype="text/javascript">
var a=012;
document.write(a);// 10
</script>
十进制:0、1、2、3、4、5、6、7、8、9
<scripttype="text/javascript">
var a=12;
document.write(a);// 12
</script>
十六进制:0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f
<scripttype="text/javascript">
var a=0xf;
document.write(a);// 15
</script>
1.2、浮点型
<scripttype="text/javascript">
var a=1.2;
document.write(a);// 1.2
</script>
1.3、 NaN类型
概念:NaN(not a number)代表非数字值的特殊值。该属性用于指示某个值不是数字。
可以把 Number 对象设置为该值,来指示其不是数字值
<scripttype="text/javascript">
document.write(200-"100px");
</script>
2、字符串类型
2.1、字符串直接量
<scripttype=“text/javascript”>
var a = “你好”;
2.2、转义字符
\n:本义是光标往下一行(不一定到下一行行首),n的英文newline
\r:本义是光标重新回到本行开头,r的英文return
<scripttype="text/javascript">
document.write("\'你好!\'");// ‘你好!’
</script>
3、布尔类型
布尔值代表“真”和“假”两个状态。“真”用关键字true表示,“假”用关键字false表示。布尔值只有这两个值。
布尔值往往用于程序流程的控制;如下所示:
<scripttype="text/javascript">
if(true) {
document.write('布尔值为真:',true);
}
if(false) {
document.write('布尔值为真:',true);
}else{
document.write('布尔值为假:',false);
}
</script>
如果 JavaScript 预期某个位置应该是布尔值,会将该位置上现有的值自动转为布尔值。转换规则是除了下面六个值被转为false,其他值都视为true。
undefined
null
false
0
NaN
""或’’(空字符串)
空数组([])和空对象({})对应的布尔值,都是true。
4、Undefined类型
如果一个变量虽然已经用var关键字声明了,但是并没有对这个变量进行赋值,而无法知道这个变量的数据类型,因此这个变量的数据类型是undefined,表示这是一个未定义数据类型的变量。
<scripttype="text/javascript">
vara;
document.write(a);
</script>
5、Null类型
引用一个没有定义的变量,则返回一个null值。这里要非常强调一点:null不等同于空的字符串("")或0,因为空的字符串("")或0是存在的,但是null表示其不存在的。
<scripttype="text/javascript">
vara=null;
document.write(a);// null
</script>
Null与undefined的区别
Null是被赋予了一个空值,undefined是表示该变量没有被赋值
null转换成数字时候是NAN undefined 是0;
6、Object对象类型
“万物皆对象”
JavaScript 中的所有事物都是对象:字符串、数值、数组、函数…
在 JavaScript 中,对象是拥有属性和方法的数据。
此外,JavaScript 允许自定义对象。