这篇文章主要讲解了“如何用JavaScript创建对象”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用JavaScript创建对象”吧!
对象: 特指自然世界中的某个事物 , 具有一些特征(属性)和行为(方法),比如姚明这个对象有姓名,性别,身高,球号,球队等等这些特征,并且会运球,投篮,跑步,吃饭等这些行为,那我们如何使用js创建对象呢?
第一种:字面量的方式创建实例对象
var YaoMing = {
name:"YaoMing",
age:36,
gender:"男",
eat:function(){
console.log('吃臭豆腐');
},
read:(){
console.log('疯子在左天才在右');
}
}
第二种:调用系统构造函数创建对象
var per2=new Object();
per2.name="大蛇丸";
per2.age=30;
per2.sex="男";
per2.eat=function () {
console.log("吃榴莲");
};
per2.play=function () {
console.log("这个小蛇真好玩");
};
这时候检测per2是否是Object的实例,返回true
第三种:自定义构造函数创建对象
function Person(name, age, gender) {
this.name = name;
this.age = age;
this.gender = gender;
this.play = function () {
console.log("天天打游戏");
};
}
var per = new Person("雏田", 18, "女");
console.log(per instanceof Person);//返回true
现在思考第三种自定义构造函数创建对象,其内部实现过程是怎样的??
拿上面的例子来说,创建对象 var per = new Person("雏田", 18, "女"); 实例化一个对象的同时对属性age,name,gender也完成了初始化赋值。内部过程如下 :
* 1.开辟空间存储对象
* 2.把this设置为当前的对象
* 3.设置属性和方法的值
* 4.把this对象返回
第四种:工厂模式创建对象
<script>
//工厂模式创建对象
function createObject(name,age) {
var obj=new Object();
obj.name=name;
obj.age=age;
obj.sayHi=function () {
console.log("您好");
};
return obj;
}
//自定义构造函数创建对象
function Person(name,age) {
this.name=name;
this.age=age;
this.sayHi=function () {
console.log("您好");
};
}
</script>
工厂模式创建对象 : var per1=createObject("小明",20);
自定义构造函数创建对象 :var per2=new Person("小红",20);
通过对比以上两种创建对象的方式,我们可以得出以下结论:
工厂模式创建对象
1.函数名小写,2.函数内部使用new关键字,3.并且有返回值,4.new之后的对象是当前的对象,5.直接调用函数就可以创建对象。
自定义构造函数创建对象
1.函数名首字母大写,2.函数内部没有使用new关键字,3.没有返回值,4.this代表当前的对象,5.通过new的方式创建对象。
感谢各位的阅读,以上就是“如何用JavaScript创建对象”的内容了,经过本文的学习后,相信大家对如何用JavaScript创建对象这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。