this关键字
(1)this获取的是对象的变量或者函数
(2)this代表的对象,如果this位于构造函数,this代表被构造的对象,否则代表调用这个函数的对象
注:这里是最不好理解的,我自己认为,this. 其实也就是一个函数,这个函数内部会执行一些算法, 判断this代表什么,不要把this就死死的认为是当前对象。
delete关键字
(1)Javascript的delete与C++不同,它不会删除o.x指向的对象,而是删除o.x属性本身
(2)对变量执行delete的情况,由于JavaScript中,所有的变量实际上都是对象属性
注: Javascript 在执行脚本之前会创建一个Global对象,所有的全局变量都是这个Global对象的属性,执行函数时也会创建一个Activation对象,所有的局部变量都是这个Activation对象的属性。
(3)能删除的属性和不能删除的属性。prototype中声明的属性无法被delete,对象的预定义属性也无法删除
(4)能删除的变量和不能删除的变量,通过var声明的变量和通过function声明的函数拥有DontDelete特性,无法被删除。<!--EndFragment-->
<!--EndFragment-->