发表于: 2020-02-22 22:31:53
0 1634
今天完成的事情:
不管是基本数据类型还是对象类型的,都是拷贝。前者拷贝值,后者拷贝引用。
基本数据类型在栈中,引用类型在堆中
引用传参实际上也是按值传递,只不过这个时候的值其实就是一个内存地址指针
创建对象的一种方法,创建一个函数box(这里输入要替换的键和值)
基于bos建立一个新对象并初始化,返回a, 建一个变量 kunkun指向bos
box(这里输入要替换的内容)

效果


创建一个Array对象 var arr=[1,2,3]
原型链是:
arr ----> Array.prototype ----> Object.prototype ----> null
函数
function to() {
return 0;
}
函数也是一个对象 原型链 to ----> Function.prototype ----> Object.prototype ----> null
构造函数创建对象
这个用new触发构造函数对象,绑定this指向新创建的对象,并默认返回this,不需要在最后写return this;
如果不写new,这就是一个普通函数,返回undefined。
坤坤通过new Kun 更改rap=坤坤。 坤坤的原型现在指向kun(rap),所以坤坤.hello() 也可以触发函数Kun里的 hello()
可以创建多个变量指向Kun(rap); 这些都指向它的原型
kunkun和biluo的hello是两个不同的函数
如果new Kun()创建了很多对象,这些对象的hello函数只需要共享同一个函数就可以了。
要让创建的对象共享一个hello函数,把hello函数移动到kunkun,biluo这些对象共同的原型上就可以了
Kun.prototype(原型)

new Kun()创建的对象指向函数Kun本身
Kun.prototype指向的就是kun的原型对象,这个原型对象自己还有个属性constructor,指向Kun函数本身。
kunkun这些对象“继承”自Kun()
编写一个createKun()函数,在内部封装所有的new,这样不需要new调用
需要取值的时候直接
明天计划的事情:
找好状态,不能再这么懒了
遇到的问题:
太懒了
收获:
...
评论