JavaScript 拾漏补遗

堆 heap 值类型

  原始类型(primitive type)

  Undefined: undefined (注意大小写:类型/ 值,下同)

  Null: null (Undefined derived from Null)

  Boolen: true/false

  Number: Number.MAX_VALUE / Number.MIN_VALUE/ NaN ; isNaN()函数 (注意:新版本有变化,待查)

  String:

  类型转换:

  Boolen()/Number()/String() **指类型名

  toString(): toString(2/8/16)

  intParse()/floatParse():

  栈 stack 引用类型

  预定义

  Object:

  Boolen:

  Number: toFixed()

  String: (略)

  instanceof()

  运算符

  delete

  void <a href="javascript:void(window.open('about:blank'))">Click me</a>

  标签 label:

  

  对象:

  对象是名值对(属性和方法)的无序(区别于数组)集合

  创建: new 和{ }

  扩展: 向对象增加新属性(意味着在运行时修改实例!) 运算符:“.”或者“[]”

  constructor:可以判断类型,不过和typeof不同,返回的是一个对象

  prototype:对象的结构

  属性:(变量)

  作用域

  var: 局部变量,即该变量作用域为最内层的函数体内

  方法:(函数)

  JavaScript支持首类(First-Class)函数,即将函数处理为对象。所以可以被:赋值给变量(=)、存储为数组元素、当做返回值等。

  this:

  简单记忆:

  全局函数(页面中简单声明的函数):window

  DOM事件处理程序(处理DOM事件的函数):与该事件关联的DOM元素(注意事件冒泡)

  构造函数:该实例本身

  理解:

  通常情况下,this总是指向调用该函数的对象(所谓的“运行时确定”)

  特例:apply()和call(),this指向以上两函数的参数对象

  闭包:

  表现形式:

  定义在一个函数内部的函数

  功能:

  能够读取其他函数内部变量

  将函数内部和函数外部连接起来

  让这些变量的值始终保持在内存中

  数组:

  一个有序的(区别于对象)值集合,这些值可以是不同的类型

  创建:new Array() 或 []