JS笔记 数据类型分类以及转换

 

 

数据类型分类

原始类型(基本类型、值类型)

一、number 类型

数字类型,表示32(4字节)的整数以及64位(8字节)的浮点数
整数
1 bit:位
2 8bit=1byte
3 1024byte=1kb千字节
demo

 

一、十进制:var num=457; 10 457 6695
二、八进制:由0-7共8个数字组成,缝八进一
在JS中以0开始的,都是八进制数字
三、十六进制
由0-9,a-f组成缝16进去一
在JS中,数字以0x开始的,都是十六进制数字

 

二、string 类型

字符串类型
须要使用"" ''括起来
由Unicode字符,数字,标点组成
每一个字符都有一个Unicode码
将字符转换为Unicode码:"张".charCodeAt().tostring(16)
将Unicode转换为字符:var s="\u5f20";
中文的范围是从"\u4e00"~"\u9fa5"
转义字符:
控制台中打印输出“hello world”
在JS中,表示一些特殊的符号或者功能
\n换行
\t:一个制表符
 

三、boolean 类型

有两个值:true和false
Boolean和number在进行运算时,true当作1,false当作0;

 

四、null 空
让对象再也不指向任何空间
五、undefined 未定义
出现场合:
一、声明变量但从未赋值时
二、试图访问对象中不存在的属性
三、查看变量的数据类型
var result =typeof;




二、数据类型的转换

一、隐转换

在某些操做中,变量的数据类型会自动的产生转换操做
数字+字符串:数字转换为字符串;
数字+布尔值:将布尔值转换为数字;
字符串+布尔值:将布尔值转换为字符串;
布尔值+布尔值:将布尔值转换为数字;

 

二、转换函数

一、tostring()
将任意类型的数据转换为字符串
语法:var result=变量.tostring()
二、parselnt()
将任意类型的数据转换为“整数”
语法:var result=parselnt(转换的数据);
parselnt()把能转的部分都转点,实在转不了的,返回一个NaN(Not a Number)
var result=parselnt("35");
三、parseFloat()
将任意类型的数据转换为“小数”
var result =parseFloat("35.3");结果:35.3
var result =parseFloat("安不上35.3");结果:NaN
四、number()
将任意类型的数据转换为number类型
只要包含非法字符,结果就是NaN
语法:var result=number("35.3");结果就是35.3
 

 

弹出输入框:
var input=window.prompt("请输入一个数字2");

 

三、运算符 和表达式

一、表达式
每一个表达式必定会有一个结果
二、运算符
一、算数运算符
+,-,*,/,++,--
%:取余数
5%2:结果 1
2%5:结果 2
 
二、++,--只在本身的基础上作加一或者减一
var num=10;
console.log(num++);
console.log(++num);
console.log(num);
++在前,先自增,再使用
++在后,先使用,再自增

 

三、注意

一、“+”两边的操做若是不是number类型的话,则作连接操做
除+之外的其余算数运算符,若是两边的操做数不是number会经过number()函数,默认进行转换,
若是转换不成功,最终的结果就是NaN
change.toFixed(2);将change保留两位小数
二、关系运算符
一、作两个数据之间的大小,相等或者不等关系的判断的
关系运算符的运算结果,必定是Boolean类型的
>,<,>=,<=,==,===,!=,!==
注意
运算符两边,若是两边的操做数不是number会经过number()函数,默认进行转换,
若是转换不成功,最终的结果就是false
若是运算符两边都是字符串的话,比较每位字符的Unicode码大小

 

isNaN()
NaN
在参与算数运算时,结果必定是NaN
在参与比较运算时,结果必定是false

 

isNaN判断变量是否为非数字,若是为true不是数字,若是值为false,是数字

 

三、逻辑运算符
条件的关联以及条件的取反操做
&&与,||或,!非

 

短路逻辑
一、短路&&
条件&&操做,若是条件为true,则执行后面的操做,若是条件为false,则不执行后面的操做
相关文章
相关标签/搜索