首页 > 代码库 > JavaScript知识点小记2

JavaScript知识点小记2

1 数据类型、判断方法

   基本类型:Undefined、Null、Boolean、Number、String

   引用类型:Object

  Ps:特殊对象类型:Array、Function、Math、Date、JSON、RegExp、Error

精确区分数据类型的方法:Object.prototype.toString.call()

console.log(Object.prototype.toString.call("34"));//[object String]console.log(Object.prototype.toString.call(66));//[object Number]console.log(Object.prototype.toString.call(function(){}));//[object Function]

 

2 执行上下文

  当前代码的执行环境

 

3 this

  this的指向是在函数被调用的时候确定的。

(1)       若一个函数中有this,但其没有以对象的形式调用,而是以函数名的形式执行,则this指向全局对象。

function test(){     console.log(this); } test();//window

 

(2)       若一个函数中有this,且该函数是以对象方法的形式调用,则this指向的是调用该方法的对象。

var obj={     test:function(){         console.log(this);     } } obj.test();//obj

 

(3)       若一个函数中有this,且包含该函数的对象也同时被另一个对象所包含,尽管这个函数是被最外层的对象所调用,this指向的也只是它的上一级对象。

var obj={     test:{         fun:function(){             console.log(this);         }     } } obj.test.fun();//test

 

(4)       若一个构造函数或类方法中有this,则其指向由该构造函数或类创建出来的实例对象。

class Test{     constructor(){         this.test = "test";  //类实例     }     option(){         console.log(this);   //类实例     } }

 

 

学习 & 感谢 & 推荐https://mp.weixin.qq.com/s/I7A1iC8Et6uOGZ234DsTlA

 

JavaScript知识点小记2