JS 里的数据类型

2019-03-19  本文已影响0人  聪聪的执著

1、JS里面有哪些数据类型

JS有下面七种数据类型:

注:array数组和function函数不是一种类型,它们都属于对象的一种;

2、number类型

十进制:

1 //表示1
1.2 //表示小数1.2
.1 //表示0.1
1.23e2 //科学计数法123

二进制(0b或0B为前缀的数值):

0b11 //表示3
var phonenumber='021-3523852' //一般存电话用字符串,以0开头容易导致识别为八进制数字

八进制(0o或0O为前缀的数字,或者0开头且只用到0~7数字的数值):

011 //表示9
0o27 //表示23

十六进制(0x或0X为前缀的数值):

0x11 //表示17

3、string类型

用单引号或双引号包裹:

'你好' //表示字符串'你好'
'' //表示空字符串,长度为0
"" //也表示空字符串,长度为0
' ' //表示空格字符串,引号中间有空格,长度为1

注:当需要表示的就是引号时,可以用转义符\标识,转义符不占字符

'\'\"' //表示' "字符,长度为2
'\n\t' // 其中\n表示回车,\t表示Tab制表符
'\\' //表示一个\,长度为1

多行字符串:

var s = ' 12345 \
              67890' //表示中间有个回车,这种一把不用,后面有空格看见
var s = ' 12345' +
              '67890' //也表示中间有个回车,好读的语法,推荐

4、boolean类型

布尔值只有两个ture真和false假,一般用于条件判断

逻辑运算符&&(与)和||(或)

5、null和undefined类型

都表示什么也没有,原创的一个bug

  1. 变量没有值,就是undefined ,语法
  2. 有一个对象object,现在不想赋值,一般给一个null,惯例
  3. 有一个非对象(数字、字符串、布尔等)现在不想赋值,一般给一个undefined,惯例

6、对象类型

哈希表就是对象类型,前面的几种类型为基本类型,对象为复杂类型,由简单类型组成,对象里面还可以有对象,空字符串''可作为对象的key;

var person = {
'name':'wen'
'age':18,
'gender':'male' , //最后一个逗号es3没有,es5开始有
}

对象取值:

person['name'] //这里要用引号,不用可能会取错值

注:对象的key符合变量标识符规定命名时可以用obj.key(取值特例)进行取值,否则必须用obj['key']进行取值,推荐加引号;

用delete对象删除内容:

delete person['name'] //会删除key和value

如何遍历对象,用for...in:

for(var key in obj)
console.log(key, obj['key'])  //obj的key和value会随机的打印出来,不按顺序

7、查询数据类型:

用typeof查询数据类型,其结果如下:

typeof number // number
typeof string // string
typeof boolean // boolean
typeof symbol // symbol
typeof null // object js原始bug
typeof undefined // undefined
typeof object // object 
typeof function // function 又一个js原始bug
上一篇下一篇

猜你喜欢

热点阅读