在这里根据变量所占的存储空间不同,为了便于对不同内存的数据更好地使用,我们分为不同的数据类型
但是,在使用的过程中,其实没有固定的变量,但js里是动态的数据类型
var num;//这样子是无法确认变量的数据类型的
也就是说其数据类型实在运行的过程中根据等号后面来确定的
var x = 10;
x = 'pink'
数据类型也是可以变化的,前面定义了一个数字整形,后面还是可以给一个字符型的
Number boolaen string undefined
有多种数据类型
数字型:要注意几种进制的问题,有2进制,8进制,16进制等
console.log(isNaN())//用来判断是否为数字,数值返回FALSE 非数字返回TRUE
字符型
在申明这种变量的时候,要注意要加一个单引号,但是要是有嵌套的时候可以用外单内双,或外双内单
在这TRUE和FALSE是参与运算的
var flag = true;
console.log(flag+1);//此时会输出2
TRUE为1 FALSE为0
如果说一个变量没有赋值,那么就会输出undefined也就是未定义
但是
var str;
console.log(str+1);//输出的结果为NaN
var space = null;
console.log(space+1);//输出: 1
console.log("你好"+space);//输出: 你好null
$2.2获取数据类型
var num = 10;
console.log(typeof num);//number
var str = 'pink';
console.log(typeof str);//string
//同理也会有boolean undefined null等一些类型
在这里null会输出object类型
- 2.3字面量
通俗的说就是在源代码中一个固定值得表示方法
number:‘2’,‘3’ // 数字字面量
string: ‘HTG.five’ //字符串字面量
$2.4数据类型转换
使用表单和prompt获取的数据都是默认字符型 但有时我们需要的是其他的类型
- 转化为字符串
tostring()
string()
加号拼接
var num = 10;
var str = num.tostring();
console.log{str};
var num = 10;
console.log(String(num));
var num = 10;
console.log(num+'');//加上一个空的字符直接转化为字符
以上就是三种转化为字符串的方法,最常用的也就是第三种,也称之为隐式转换
- 转化为数字型
parselnt(string) //这样用于取整
parseFloat(string) //保留浮点型
Number() //强制转化为 数字
var age = prompt("输入你的年龄");
console.log(parseInt(age));//得到的一定是正数,向零取整
console.log(’120px‘);//这样输出120 直接去掉单位 但这个前面不能加上字母
var age = prompt("请输入你的年龄");
console.log(parseFloat('3.14'));//输出为3.14
var age = prompt("请输入你的年龄");
console.log(Number(age));//直接就强制转换
var age = prompt("请输入你的年龄");
console.log(age-0);//自动隐式转换
console.log('123'-'120');//利用减号乘号以及除号都会让字符转化为数字型
例分析:
01 用户输入出生的年份 我们弹出他的年龄
var year = prompt('输入您的出生年份');
var age = 2018 - year;//减号自动转化为数值型
alert('您今年已经'+age+'岁');
02 简单的加法计算器
var num1 = prompt('请输入第一个数字');
var num2 = prompt('请输入第二个值');
var result = parseFloat(num1) + parseFloat(num2);
alert(result);
$2.3 转化为bool型
除了几个0 null undefined 几个值其他都为 TRUE 也就是1