js执行单位是一行一行的,每一行为1个语句,语句以一个分号结尾,写一个分号没有加任何东西,js也会识别成语句,下列三个空分号也会被js识别成三个语句

;;;

七种数据类型(请背诵):number string boolean symbol undefined null object

1,数字 number

十进制1开头表示:1 1.1 123e2

二进制0b开头表示:0b11,0b22

八进制0开头表示:011,

十六进制0X开头表示:0X11

NaN是 JavaScript 的特殊值,表示“非数字”(Not a Number),主要出现在将字符串解析成数字出错的场合。NaN不等于任何值,包括它本身

parseInt() 将字符串转为

2,字符串 string

var a='字符串'; 转义符是开始。字符串两边只要有一个是字符串,那么+就是字符串拼接功能, 两边如果都是数字,那么就是算术功能。

  • 空字符串:''

多行字符串: ‘ ’

'hello world' "hello world" 文本字符串

''两个单引号组成空字符串length:0

' '两个单引号中间有空格组成length:1

多行字符串回车表示



var s = '12345' +               '67890' // 无回车符号   或   var s = `12345   67890` // 含回车符号
var s2='12345'+'67890'推荐写法
es6 新增反引号
var s=`12345
67890`   这样打印出来字符串是换行 length:11 5后面默认有空格



3,布尔 boolean

分 true和false,区分大小写

a && b 在 a 和 b 都为 true 时,取值为 true;否则为 false

a || b 在 a 和 b 都为 false 时,取值为 false;否则为 true

计算机内部存储:true为1,false为0

4,symbol(符号)


方应杭:「每日一题」JS 中的 Symbol 是什么?zhuanlan.zhihu.com



5,null 6,undefined

都表示没有值,至于 JS 为什么有两个表示「没有值」的东西

null表示一个空,变量的值如果想为null,必须手动设置

var a=null;

undefined表示一个声明了没有赋值的变量,变量只声明的时候值默认是undefined

  1. (规范)如果一个变量没有被赋值,那么这个变量的值就是 undefiend
  2. (习俗)如果你想表示一个还没赋值的对象,就用 null。如果你想表示一个还没赋值的字符串/数字/布尔/symbol,就用 undefined(但是实际上你直接 var xxx 一下就行了,不用写 var xxx = undefined)

7,对象 object

  • object 就是上面几种基本类型(无序地)组合在一起
  • object 里面可以有 object
var person = {
      name: 'Frank', 
      'child': {
          name: 'Jack'
      }, // 最后这个逗号可有可无
  }



  • object 的 key 一律是字符串,不存在其他类型的 key
  • object[''] 是合法的
  • object['key'] 可以写作 object.key
  • 注意 object.key 与 object[key] 不同
  • delete object['key']
  • 'key' in object各种值得集合

各种值组成的集合。哈希表 key value组成 js只支持key字符串表示'key'';'

遍历对象 for in for(val in person) val变量名 person下面的对象



var person = {
         'key':value,      访问key   对象.key(key代表属性名person.name)
        'name' : 'yu',     
        'age' : 18
        'child' : {'name' : 'yu2', 'age' : 1}  对象中有对象
        9a : 5  报错9a不加引号就要以标识符规则来命名 开头不为数字
        '9a' : 5 这样不会报错
}
person['name']  引号不能省略 name命名符合标识符命名规则可以改写person.name
deleat person['name'] 删除   
person.name //undefined 无value
 'name' in person //false 无key
person,name=undefined 清空value但是key还在
   person[name]报错



-object 的 key 一律是字符串,不存在其他类型的 key

-object[''] 是合法的

-object['key'] 可以写作 object.key

-注意 object.key 与 object[key] 不同

object[key]适用于动态取key、key为特殊字符。

object.key访问的是object对象下的key。
object[key]访问的是object数组的下标为key的值(对象是可以以数组形式来访问的)。

object.key这里的key必须是引用值。

object[key]这里的key必须是字面量。

-delete object['key']

-'key' in object

typeof 操作符




java取字符串前四位 java字符串取后四位_js取数组的前十个