JS中的深浅拷贝、for语句

目录

一、深浅拷贝

1、浅拷贝

2、深拷贝

二、for语句

1、for

2、for-in

3、for-of

4、forEach


一、深浅拷贝

数据的类型有:(1)简单数据类型(number、string、boolean、null、undefined),又称为基本数据类型。简单的数据类型可以直接存储在栈(stack)中。(2)对象数据类型(object),又称为复杂数据类型。

1、浅拷贝

拷贝可以看做是赋值

浅拷贝:把对象当中“最外层”的属性,拷贝给新的对象。在拷贝的过程中,如果属性的值是简单数据类型,可直接拷贝给新的对象;若果是对象数据类型,只是把原来对象的内存地址拷贝给新的对象(在浅拷贝中,如果数据类型是对象数据类型,在拷贝过程中,其中一个对象改变了内存地址,另一个对象也会受到影响)

2、深拷贝

深拷贝:把对象当中的所有属性,拷贝给新的对象。并且拷贝内存地址。(深拷贝前后两个对象互不影响。)

二、for语句

1、for

for循环的格式

for循环的执行方式

先定义循环变量的初始值,再进行判断初始值是否满足进入循环的条件,如果满足进入循环的的条件,就执行循环体语句,直至变量所赋给的值不满住循环条件后跳出;如果不满足循环条件直接退出循环。

for循环的优点

将循环变量和循环次数有关的条件都定义在()中,使得内容更加集中,不会造成语法形式的混乱;可以控制循环的起始和结束。

2、for-in

for-in循环的格式

 for-in既可以遍历数组又可以遍历对象; for-in所得到的结果是数组的下标或者对象的属性名

3、for-of

for-of循环的格式

 for-of可以循环数组,但不能循环一个普通对象;可以循环一个拥有enumerable属性的对象;for-of遍历数组得到的是数组的值

4、forEach

forEach的应用格式

 形参1:存储的是当前的循环次数时,获取的单元数据

形参2:存储的是当前循环次数时,获取的单元索引下标

参数3:存储的是原始数组

三个形参不一定都要定义,可以根据需求任意定义,只要符合命名规范就可以

forEach的特点:

只能循环遍历数组,不能循环遍历对象;forEach得到的结果是数组的值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值