构造函数是什么?
创建一个构造函数,专门用来创建Cat对象。
1.怎么用:
构造函数(Constructor)的创建方式和普通函数一样,但通常首字母进行大写,用于和普通函数区分,构造函数和普通函数的区别就是调用方式的不同,普通函数是直接调用,而构造函数需要使用new关键字来调用
例子:
2.返回值:
(1) 没有手动添加返回值,默认返回 this
(2) 手动添加一个基本数据类型的返回值,最终还是返回 this
(3) 手动添加一个复杂数据类型(对象)的返回值,最终返回该对象
如果指定了返回对象,那么,this对象可能被丢失。如果直接调用函数,那么,this对象指向window,并且,不会默认返回任何对象(除非显性声明返回值)。为了防止因为忘记使用new关键字而调用构造函数,可以加一些判断条件强行调用new关键字
例如:
3.使用 instanceof 可以检查一个对象是否是一个类的实例
语法:对象 instanceof 构造函数
如果是实例,则返回true,否则返回false
4.对Person类进行优化
在创建Person构造函数中,为每个对象都添加了一个haihai方法。目前我们的方法都是在构造方法内部创建的,也就是构造函数每一次执行就会创建一个新的haihai方法,也就是说所有实例的haihai都是唯一的。 这样会导致了构造函数执行一次就会创建一个新的方法。执行多少次就会创建多少个新的方法,而这些方法都是一样的,这样就导致了内存空间的浪费,其实我们可以让所有对象共享同一个方法。
总结:
一个构造函数可以通过new创建多个实例对象
创建构造函数时,里面的属性和方法前必须加this
构造函数不需要return 就可以返回结果
这是我所学到的JavaScript的构造函数,所以我要分享给你们,希望可以帮助到你们。
以上就是我的分享,新手上道,请多多指教。如果有更好的方法或不懂得地方欢迎在评论区教导和提问喔!