JS 里的数据类型

JS 里的数据类型

  1. JS中有七种数据类型,分别是:number,string,boolean,undefined,null,object,symbol
    注:没有function和array类型,typeof null/array会返回object,typeof function会返回function

  2. number 数字类型
    number在js中都是以浮点数形式存在

  • 十进制:没有前导0的数值。
  • 八进制:有前缀0o或0O的数值,或者有前导0、且只用到0-7的八个阿拉伯数字的数值。
  • 十六进制:有前缀0x或0X的数值。
  • 二进制:有前缀0b或0B的数值。
  • NaN: NOT a Number 非数字,他不等于任何数,它与任何数的运算都是NaN,boolean返回false,它不是一个数据类型typeof NaN返回number
  1. string 字符串类型
    string是一系列被引号包围的字符,(可以是数字,符号,字母,其他文字)
  • 如果要在单\双引号字符串的内部,使用单\双引号,就必须在内部的单\双引号前面加上反斜杠,用来转义
    字符串默认只能写在一行内,分成多行将会报错,怎样将字符串分成多行写呢?常见有以下方法
var longString = 'a\
b\
c'
//在每一行后面加上反斜杠,但是要注意反斜杠后面存在空格的话会报错
var longString = 'a'+
'b'+
'c'
//用+连接符将字符串连接起来
var longString = `a
b
c`
//用重音符 ` 把字符串包围,但是这种方法会把换行也保存下来
  1. boolean 布尔值类型
    布尔值代表“真”和“假”两个状态。“真”用关键字true表示,“假”用关键字false表示。布尔值只有这两个值。
  • 如果 JavaScript 预期某个位置应该是布尔值,会将该位置上现有的值自动转为布尔值。转换规则是除了下面六个值被转为false,其他值都视为true。
    undefined
    null
    false
    0
    NaN
    " "或 ' '(空字符串)
  1. null与undefined类型
    null与undefined都可以表示“没有”,含义非常相似。
  • 语法:如果一个变量没有值,那么该变量为undefined
  • 惯例1:如果想声明一个对象,暂时不想给值,可以给其赋值null
  • 惯例2:如果想声明一个非对象,暂时不想给值,可以不赋值让其默认为undefined
  1. object 对象类型
    object类型可以涵盖之前的所有类型,其本质就是哈希表,是一种无序键值对的复合数据集合。
  • 对象obj的所有键名虽然看上去像数值,实际上都被自动转成了字符串。
  • 对象的key如果满足标识符规范可以不用加引号,否则要加引号
  • 对象内容最后可以加'','' 如果加了'',''则不支持ie7以前的版本
  • 可通过delete obj.key的方式删除相应的键值对
  • 可通过 for(var key in obj){console.log(obj[key])}的方式来遍历obj,但是要注意若要引用相应key对应的值
    则要用obj[key]的方式,obj.key与obj['key']都是错的
  1. symbol 类型
    Symbol 可以创建一个独一无二的值(但并不是字符串)。

你可能感兴趣的:(JS 里的数据类型)