数据类型
变量的数据类型
弱类型,变量的数据类型,只有在程序运行的时候,才确定具体的类型,
不同的数据类型可以在原来的空间,相互转换,如下是可以运行的:
var age = 21;
age = 'twenty-one';
数字型
8进制 和 16进制
var octal = 0111;
var decimal = 0x1b;
console.log(octal);
console.log(decimal);
最大值,最小值,无穷数(-Infinity),非数字(NaN)
console.log(Number.MAX_VALUE);
console.log(Number.MIN_VALUE);
console.log(Number.MAX_VALUE*2);
console.log(Number.MIN_VALUE - Number.MAX_VALUE*2);
console.log('not a number ' - 1);
数字类型的判断
isNaN(var v)判断是否为非数字类型的,返回true或false。
字符串型
字符串嵌套,外双内单,外单内双。
转义字符 /
用在 引号 内:
var str = '我是个"高富帅"\n程序员';
字符串求长
str.length;
var str = 'my name is andy';
console.log(str.length);
字符串拼接 ’ + ’
与Java相同。
Boolean型
true参与数字运算时是 1,false参与数字运算时是 0。
console.log(true+1);
console.log(false+1);
undefined与null
undefined参与数字运算时,是NaN类型的,参与字符串拼接,是’undefined’;
null参与数字运算,是0;参与字符串拼接,是’null’。
var variable = null;
console.log(variable+ '是空吗');
console.log(variable+1);
typeof
查看属于哪种类型的变量,需要注意的是,null为Object类,而promot获取的为,字符串型的。
var variable = undefined;
console.log(typeof variable);
var s = prompt('');
console.log(s);
console.log(typeof s);
数据类型转换
转换为字符串类型
v.toString()方法
var num = 12;
var str = num.toString();
console.log(typeof str);
String(var v)函数
var num = 12;
var str = String(num);
用空字符串
var num = 12;
var str = num + '';
转换为数字型
parseInt(),转换为整数型,默认遇到符号直接去掉后面的部分。
var s = prompt('请输入');
console.log(parseInt(s));
console.log(parseInt('2.333'));
console.log(parseInt('12$'));
console.log(parseInt('12====21'));
parseFloat(),转换为浮点型
略
Number(string)
var s = '12';
console.log(Number(s));
使用隐式转换 - * /
var s = '12';
console.log(s - 0);
console.log(s * 1);
转换为Boolean值
Boolean()函数,将其他类型转换为布尔值
代表空,否定的值,会被转换为false,如0,’’,NaN,null,undefined。
console.log(Boolean(''));
console.log(Boolean(0));
console.log(Boolean(NaN));
console.log(Boolean(null));
console.log(Boolean(undefined));
console.log('-----------------');
console.log(Boolean('小白'));
console.log(Boolean(12));