介绍
本篇内容主要讲解“JS创建对象的方式是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JS创建对象的方式是什么”吧!
<>强创建对象的4种方式:强>
- <李>
1。字面量的方式去创建对象
李> <李>2。使用<代码> 代码>新字符创建对象
李> <李>3。自定义构造函数
李> <李>4。工厂模式创建对象
李><强>对象是指:强>具有属性和方法
1。通过字面量的方式去创建对象
var person1={ ,,,的名字:& # 39;柯南& # 39;, ,,,年龄:12岁 ,,,性:& # 39;男& # 39; ,,,吃:函数(){ ,,,,,,,console.log(“我饿了,想吃饭“) ,,,}, ,,,说:函数(){ ,,,,,,,console.log(“我叫柯南“) ,,,} } console.log (“person.eat输出函数“,person.eat) person.eat();,//直接输出,我饿了,想吃饭
<强>我们需要注意的是:强> person.eat和person.eat()的区别
<李>
引用>person.eat是输出函数
李> <李>person.eat()是调用函数
李>
2。使用新字符创建对象
var person2=new 对象(); person2.name=& # 39;柯南& # 39; person2.age=& # 39; 21 & # 39; person2.sex=& # 39;男& # 39; person2.eat=function () { ,,,console.log(“我饿了,想吃饭“) } person2.say=function () { ,,,console.log(“我叫柯南“) } console.log(, & # 39;性别& # 39;,person2.sex ),//输出男<强>上面这两种方式去创建对象的缺点:强>
虽然上面这两种都可以去创建对象
但是我们创建出来的对象压根就不知道是什么类型?
当然我们知道他们是对象类型
这个时候我们就需要使用自定义构造函数去创建对象了
引用>3。自定构造函数创建对象
function 人(姓名、年龄、性别、像){ ,,,console.log(& # 39;没有给像形参传递值就是undeined& # 39;,) ,,,//,这里的这个指向的是人这个对象 ,,,console.log(& # 39;这个# 39;,这) ,,,this.name=名称; ,,,this.age=年龄; ,,,this.sex=性; ,,,this.say=function () { ,,,,,,,console.log(“我叫“,名称) ,,,} }//这一行代码表示的是创建一个对象//同时实例化一个对象//并且给这个对象的属性进行初始化//所以这一行代码并不简单 let per1=new 人(& # 39;柯南& # 39;,19日& # 39;男& # 39;); per1.say (); console.log (per1 instanceof 人);//真正的现在我们知道了<代码> per1> 代码是属于<代码> 代码>类人型的,这就是自定构造函数创建对象的优势,我们知道它创建的对象是哪个类型的
<>强ps: >强构造函数通常首字母大写
引用>
<强>当我们新一个对象的时候做了四件事情:强>
通过创建自定义对象我们明白了当我们新一个对象的时候做了四件事情
<李>
1。开辟空间存储当前对象
李> <李>2。把这<代码> 代码>设置为当前对象
李> <李>3。设置属性和方法
李> <李>4。把这<代码> 代码>对象返回
李>4。工厂模式创建对象
function createObj(姓名、年龄),{ ,,,let obj=new 对象(); ,,,obj.name=名称; ,,,obj.age=年龄; ,,,obj.sayHi=function () { ,,,,,,,console.log (obj.name) ,,,} ,,,return obj; } let 每=createObj(& # 39;司藤& # 39;,200) console.log (per.age);//200 per.sayHi();,//司藤到此,相信大家对“JS创建对象的方式是什么”有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
JS创建对象的方式是什么