一、Js的数据类型
JavaScript 拥有动态类型。这意味着相同的变量可用作不同的类型。可以通过typeOf来判断数据类型。
var x // x 为 undefined
var x = 6; // x 为数字
var x = "Bill"; // x 为字符串
Js的基本数据类型:数字、
字符串、布尔、数组、对象、Null、Undefined。
1、数字
Js 只有一种数字类型。数字可以带小数点,也可以不带.
2、字符串
字符串是存储字符(比如 "Hello World")的变量。
字符串可以是引号中的任意文本。您可以使用单引号或双引号。
3、布尔
布尔(逻辑)只能有两个值:true 或 false。
var x=true
var y=false
4、数组
具体的数组操作请详见 Js对Array的各种操作总结。
5、对象
对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔。
var person={firstname:"lin", lastname:"xq", id:0101};
上面例子中的对象 (person) 有三个属性:firstname、lastname 以及 id。
6、Undefined 和 Null
Undefined 这个值表示变量不含有值。
可以通过将变量的值设置为 null 来清空变量。
二、Js的相关操作
显示类型转换(强制类型转换)
Number()
parseInt()
parseFloat()
隐式类型转换
'- ' '*' '/' '%’变成数字,如‘200'-3 -->197;
'+' 变成字符串,如‘200'+3 -->'2003';
'++' '--' 变成数字;
'>' '<' 分清楚是字符串的比较、数字的比较还是字符串和数字的比较,如'100'<'9',1000>9;
'!' 取反,把右边的数据类型变成布尔值,如
var a = 'hello';
alert(!a);
var b = 0;
alert(!b);
1、Number()
将看似像数字的字符换转化为数字。number()是整体上进行检测。
注意:
函数、json对象、undefined无法转换,最终转为NaN。如:
var a = function(){alert('1111');}
alert(Number(a));
var json = {firstname:"lin", lastname:"xq", id:0101};
alert(Number(json));
var b = undefined;
alert(Number(b));
2、parseInt()
parseFloat()
从左到右一个一个进行检测。
注意:
NaN不是个数字的数字类型。 NaN跟自己作比对时是不想等的。
一旦在写程序的过程中出现了NaN,表明进行了非法的运算操作。
延伸:可以用isNaN()判断某些值是不是数字。