基础知识

42 阅读2分钟
javaScri的数据类型

如果使用基本数据类型的数据,我们所创建的变量都是独立的,不能成为一个整体。 对象是一种复合的数据类型,在对象中可以保存多个不同的数据类型的属性 对象的分类:

  1. 内建对象:有ES标准定义的对象,在任何的ES的实现中都可以使用的,比如Math,string,number,function,object
  2. 宿主对象:有js运行环境提供的对象,目前主要有浏览器提供的对象:比如 BOM(文档对象模型) DOM(浏览器对象模型)
  3. 自定义对象:由开发人员自己创建的对象
基本数据类型和引用数据类型的值比较

当比较两个基本数据的值时,就是比较值,而比较引用数据类型的值时,它是比较的对象的内存地址

构造函数的执行流程:
  1. 立刻创建一个新的对象
  2. 将新建的对象设置为函数中this,在构造函数中可以使用this来引用新建的对象
  3. 逐行执行函数中的代码
  4. 将新建的对象作为返回值返回 使用同一个构造函数创建的对象,我们称为一类对象,也将一个构造函数称为一个类。我们将通过一个构造函数创建的对象,称为是该类的实例 使用in检查对象中是否含有某个属性时,如果对象中没有但是原型中有,也会返回true 可以使用对象的hasownProperty()来检查对象自身中是否含有该属性,更用该方法只有当对象自身中含有属性时,才会返回true。
this的情况:
  • 当以函数的形式调用时,this是window
  • 当以方法的形式调用时,谁调用方法this就是谁
  • 当以构造函数的形式调用时,this就是新创建的那个对象
原型对象也是对象,所以它也有原型。

当我们使用一个对象的属性或方法时,会现在自身中寻找 自身中如果有,则直接使用,如果没有则去原型对象中寻找,如果原型对象中有,则使用,如果没有则去原型的原型中寻找,直到找到Object对象的原型,object对象的原型没有原型,如果在Object中依然没有找到,则返回undefined

toSrting

当我们直接在页面中打印一个对象时,事件上是输出的对象的tostring()方法的返回值