JS 里的数据类型

七种数据类型:number string boolean symbol undefined null object
注意没有 array 类型也没有 function 类型。

在这里插入图片描述
number
整数和小数:1 1.1 .1
科学记数法:1.23e2
二进制:0b11
八进制:011(后来 ES5 添加了 0o11 语法)
十六进制:0x11
string
空字符串:’’
多行字符串:
var s = ‘12345’ +
‘67890’ // 无回车符号

var s = 12345 67890 // 含回车符号
JavaScript 内部,所有数字都是以64位浮点数形式储存,即使整数也是如此。
NaN 表示「非数」,NaN 是一个数字

JavaScript引擎不能自动识别编号大于0xFFFF的Unicode字符。JS允许在程序中使用Unicode编号表示字符,写成\uxxxx的形
式。’\u00A9’ 表示 “©”。var f\u006F\u006F 是合法的。
全局函数 btoa() 能将字符串转为Base64编码,全局函数 atob() 能将 Base64编码转为原来的编码。要将非ASCII码字符转为
Base64编码,必须中间插入一个转码环节。Base64是一种基于64个可打印字符来表示二进制数据的表示方法。

boolean 的取值
只有两个值:true 和 false
a && b 在 a 和 b 都为 true 时,取值为 true;否则为 false
a || b 在 a 和 b 都为 false 时,取值为 false;否则为 true
symbol

undefined 和 null
都表示没有值,至于 JS 为什么有两个表示「没有值」的东西,可以从 JS 之父的 twitter 中知道当时他也挺纠结的
(规范)如果一个变量没有被赋值,那么这个变量的值就是 undefiend
(习俗)如果你想表示一个还没赋值的对象,就用 null。如果你想表示一个还没赋值的字符串/数字/布尔/symbol,就用 undefined(但是实际上你直接 var xxx 一下就行了,不用写 var xxx = undefined)
object
object 就是上面几种基本类型(无序地)组合在一起
object 里面可以有 object
var person = {
name: ‘Frank’,
‘child’: {
name: ‘Jack’
}, // 最后这个逗号可有可无
}
object 的 key 一律是字符串,不存在其他类型的 key
object[’’] 是合法的
注意 object.key 与 object[key] 不同
object.key等价于object[‘key’]

查看一个对象本身的所有属性,可以使用Object.keys方法。

var obj = {
keyone: 1,
keytwo: 2
};

Object.keys(obj);
// [‘keyone’, ‘keytwo’]

delete object[‘key’]
‘key’ in object //false;

for…in 循环用来遍历对象
for…in 循环会跳过不可遍历的 key(比如:length)
for…in 循环不仅遍历对象自身的属性,还遍历继承的属性

typeof 操作符

类型stringnumberbooleansymbolundefinednullobjectfunction
typeof‘string’‘number’‘boolean’‘symbol’‘undefined’‘object’‘object’‘function’

function 并不是一个类型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值