JavaScript 数据类型

JavaScript 有7种数据类型:

  1. number(数值)
  2. string(字符串)
  3. Boolean(布尔)
  4. Symbol(符号)
  5. null
  6. undefined
  7. object(对象)
    前6种为基本类型(简单类型),object为复杂类型,复杂类型的值由简单类型组成。

number

十进制

1
0.1
.1
1.23e2
1.23E2

二进制

0b11
0B11

值为十进制的3

八进制

011

值为十进制的9

十六进制

0x11
0X11

值为十进制的17

string

'你好'"你好"
''"" 空字符串长度为0
' '" " 空格字符串长度为1
转义符 \:

代码 表示
'\'' 单引号
'\n' 回车
'\t' Tab 制表符
'\\' 转义符 \ 本身

上表中字符串长度均为1。
多行字符串:

var s1 = '12345\
         67890'
var s2 ='12345' + 
        '67890' 

推荐第二种,第一种容易出 bug(/后面多写了空格)
ES6 可以用反引号`写多行字符串:

var s3 = `12345
67890`

字符串s3的长度为11,包含反引号中的回车和空格。

boolean

值为true 或 false
&& 与运算
|| 或运算

null

值为 null

undefined

值为 undefined

null 与 undefined 的区别

  1. 如果一个变量没有赋值,那么他的值是 undefined。
  2. (惯例)如果一个对象(object),暂时不想给他值,用 null。
    如果一个非对象(number、string等),暂时不想给他值,用 undefined。

object

对象就是简单类型的组合。

var person = {
'name': 'frank',
'age': 18,
married: true,
children: {name: 'xxx', age: 1},
xiaosan: undefined,
self: person,
'': 'frankxx',
'a b': 'a b c',
}

花括号里面可以是其他简单类型,也可以是另一个对象,甚至可以时自己。
冒号左边是 key(又称属性),key必定是字符串,花括号中的 key 的引号可以省略,如果不加引号,key的命名规则必须遵守标识符(变量名)的命名规则。
花括号中最后一组值后面的逗号在 ES3 中不能有,在 ES5 中可以有。

person['name']
person.name

使用时方括号中 key 的引号不能省略。
在 key 的命名规则遵守标识符(变量名)的命名规则的情况下,使用时可以用 person.name 的形式。

delate person['name']
delate person.name

可以删除一组 key 和value。

for(var key in person){
    console.log(key, person[key])
}

遍历对象里的 key 和 value。

Object.keys(person)

查看对象的所有属性。

'name' in person

检查对象里是否有某个属性。

with

var obj = {
  p1: 1,
  p2: 2,
};
with (obj) {
  p1 = 4;
  p2 = 5;
}
// 等同于
obj.p1 = 4;
obj.p2 = 5;

with 语句的一个很大的弊病就是绑定对象不明确,建议尽量不要使用with语句。

typeof

返回变量的数据类型。

变量 typeof
number "number"
string "string"
boolean "boolean"
symbol "symbol"
null "object" // Bug之一
undefined "undefined"
object "object"
function "function" // Bug之二
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 4,660评论 0 13
  • JavaScript 语言的每一个值,都属于某一种数据类型。JavaScript 的数据类型,共有六种。(ES6 ...
    崔磊8080阅读 343评论 0 0
  • 数据类型分类 JavaScript语言的每一个值,都属于某一种数据类型。JavaScript的数据类型,共有六种。...
    YQY_苑阅读 707评论 0 0
  • “耆英”号是一艘在香港建造的木造帆船,1846年12月这艘船从香港出发往印度洋航行。它是一艘传统的广式帆船,船身长...
    26c0acdcc586阅读 349评论 1 3
  • 出发,总是好的,它象征着一种出离,更是必须面对的另一个开始。火车疾驰着,窗外流动着过去的风景,在生命的情调上来说是...
    wow魏十七阅读 796评论 0 2

友情链接更多精彩内容