JavaScript--总结六(类型-内置对象)

类型

原始数据类型:number , string , boolean , undefined , null , object

基本类型(简单类型)也可以说是值类型:number  string boolean

复杂类型(引用类型):object

空类型:undefined  null

值类型的值在哪一块空间中存储?-----栈中存储

引用类型的值在哪个空间存储?----对象在堆上存储,地址在栈上存储

//var num=10;//值类型,值在栈上
//var obj={};//复杂类型,对象在堆,地址(引用)在栈

值类型之间的传递,传递的是值---值类型作为函数的参数,传递的是值

引用类型之间的传递,传递的是地址(引用)---引用类型作为函数的参数,传递的是地址

 

 

引用类型传递解析:

var p=new Person("zs",18,1000);-----在堆上开辟一个空间存储了对象 new Person("zs",18,1000),在栈上存储了它的地址(p),p指向了对象new Person("zs",18,1000);

consolo.log(p.name);-----此时的p指向的对象的name属性就是“zs”;

f1(p)----将p的地址传入到f1函数中,同一个地址它们的指向相同,函数中person.name将p的name属性改为了“ls”,此时p的name属性是“ls”;

注:以上这里p和personde指向是同一个对象,所有person改了属性即等于p改了属性

函数中person=new Person("aa",18,10);---重新new了一个对象,在空间中重新开辟了一个堆空间存储对象new Person("aa",18,10);person的地址也随即改变成了新的对象的地址,person的指向发生了改变,此时p的name的值依旧是“ls”.

注:以上person改变了地址的指向,所有person改变的属性和p中的无关,p中的属性依旧是原来的。

 

 

内置对象

js学习中三种对象

1--内置对象---JS系统自带的对象

2--自定义对象---自己定义的构造函数创造的对象

3--浏览器对象---BOM

 

内置对象:Math   Date  String  Array

 

如何学习一个方法?

  1. 方法的功能

  2. 参数的意义和类型

  3. 返回值意义和类型

  4. demo进行测试

 

 

Math对象

MDN---在线的帮助文档(通过查询MDN学习Math对象的方法的使用)

Math对象不是构造函数,它具有数学常数和函数的属性和方法,都是以静态成员的方式提供

实例对象:通过构造函数创建出来的,实例化的对象

静态对象:不需要创建,直接就是一个对象.方法(静态方法)直接通过这个对象名字调用

实例方法必须通过实例化对象调用

静态方法必须通过大写的对象调用

     

 

posted on 2021-01-06 21:53  小田的日常  阅读(70)  评论(0)    收藏  举报

导航