JavaScript数组、函数、对象三者之间的相互关系(一)

本文介绍了JavaScript中的基本概念,包括数组的四种创建方式、函数的三种声明形式以及对象的六种创建方法。通过实例展示了它们在JS编程中的应用,帮助理解它们之间的联系和作用,为JS基础及组件化结构的学习提供了清晰的脉络。
摘要由CSDN通过智能技术生成

JS 数组、函数、对象有什么样的联系呢?

因为老师在讲JS基础及组件化结构这一块自己有点懵,怎么说呢就是感觉有点混乱,所以百度了好多人的经验后自己的心得吧。
要了解他们的关系先得知道每一个是什么对吧。

废话不多说,先上菜!

数组
1.什么是数组:所谓数组,就是将多个元素(通常是同一类型)按一定顺序排列放到一个集合中,那么这个集合我们就称之为数组。
2.创建数组的4种方式:
第一种:声明或者创建一个不指定长度的数组,又称之为实例化创建
/var arrayObj = new Array();
第二种:声明或者创建一个数组并指定长度的数组
var arrayObj = new Array(5);
第三种:声明或者创建一个带有默认值的数组
var arrayObj = new Array(2,4,“a”,“y”,8);
第四种:创建一个数组并赋值的简写,又称之为隐式创建数组—中括号代表数组。
var arrayObj = [2,4,“a”,“y”,8];

函数
1.什么是函数:把一段相对独立的具有特定功能的代码块封装起来,形成一个独立实体,就是函数,起个名字(函数名),在后续开发中可以反复调用 提高代码复用性
函数的作用就是封装一段代码,将来可以重复使用
第一种:字面量 function声----可以先使用后定义
function add(){

}
add();//调用

第二种:var赋值表达式----先声明后使用
var add = function(){

};
add();

第三种:构造函数 必须是字符串形式 效率比较差,首先解析字符串变量 其次再实例化函数 F要大写 参数、结果要加引号
var add = new Function(‘num1’,‘num2’,‘return num1+num2’);
add();

对象
1.什么是对象:JavaScript 中的所有事物都是对象:字符串、数字、数组、日期,等等。
在 JavaScript 中,对象是拥有属性和方法的数据。
2.创建对象的6种方式:
第一种:字面量式对象声明
:var obj = {
name:wahaha
sex:funcrtion(){}
};

第二种:new操作符后跟Object构造函数
// var box = new Object();//相当于 var obj = {};—引用数据类型
// box.name = ‘zhang’;
// box.age
// box.infos= function(str){
// return this.name+ this.age+"—"+str;
// }//this 代表obj
// alert(box.name);
// var con=box.infos(“在吃饭!”);
// alert(con);

第三种:构造方法声明对象
function Fn(name,sex,age){
this.name=name;//this.name属性 后面的name参数习惯上将属性名==参数
this.sex=sex;
this.show=function(){
alert(this.name+"----"+this.sex+this.age);
}
}
var obj1 = new Fn(“zhangli”,“nan”,18);
注意:this代表当前对象

第四种:工厂方式声明对象
function createObj(name,age){//create==创造
var obj = new Object();//放在里面
obj.属性 = 属性值;
obj.方法 = function(){}
return obj;//一定要有这个
}
var box1 = createObj(“liski”,100);
var box2 = createObj(“wanger”,200);
构造和工厂模式区别:
1.构造方式不会显示创建对象,它会将我们的属性赋值给this,不需要return对象。
2.工厂需要在方法的内部创建对象,必须要将对象返回出来,但是提供一个创建接口。能将属性、方法赋予给Object实例。

第五种:原型模式声明对象
function test(){}
test.prototype.属性 = 属性值;
test.prototype.方法 = function(){代码}
var obj = new test();
好处:让所有的实例化的对象都拥有它包含的属性及方法

第六种:混合模式声明对象
function test(v1,v2,v3){
this.v1 = v1;
this.v2 = v2
this.v3 = v3
}
test.prototypt.方法 = function(){代码}
var obj = new test();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值