2020/02/09 01-解构和数组操作

1
JS的解构跟python类似,JS的可变参数…三个点,就一直把三个点用到底

在这里插入图片描述
python是不可以在一个列表里把参数解构的,JS可以,这里的列表叫数组,拿到数组可以把里面的参数解构,解开,插入到新数组里
在这里插入图片描述
直接可以得到新的数组,数组是有顺序的,插入的位置决定了顺序,这个数组其实就是一个列表
在这里插入图片描述在这里插入图片描述
数组这样解构就可以了
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
这个是变量定义
在这里插入图片描述
想要把里面的东西解开

有逗号表达式,就不能这么写,等于b等于这个数组
在这里插入图片描述
这样就解开了
在这里插入图片描述
abc就没人要了
在这里插入图片描述
悬空就等于没定义
在这里插入图片描述
这个地方就是一个数组
在这里插入图片描述
剩余参数必须在最后,不然是不允许的
在这里插入图片描述
剩余参数必须是最后一个
在这里插入图片描述
现在有点像丢弃变量的意思,最后…c是尽可能的收集,出来应该是数组
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
x=100,y=200,z=300

在这里插入图片描述
只要中间的,本来也可以两边不对应
在这里插入图片描述
在这里插入图片描述
少了多了都没问题,可变的是一个数组
在这里插入图片描述
还支持默认值
在这里插入图片描述
可以两边不一样,可以用缺省值
在这里插入图片描述
解构的时候,变量从左到右和元素对齐,可变参数放最右边。
能对应的数据就对应,对应不到返回默认值,没有默认值返回undefined

在这里插入图片描述
在这里插入图片描述
对象解构需要用到大括号
在这里插入图片描述
属性是没有顺序的,是靠名字对应的。对象跟数组解构的最大区别,数组解构的时候,数组是没什么名字可用的,数组是有顺序的,对象是没有顺序的,所以现在写一个变量,除了拿名字找其他没什么办法
在这里插入图片描述
解开的时候 用a,b,赋值的时候用m,n
在这里插入图片描述
报错是因为拿a去解构,但是出来赋值的变量是m,
在这里插入图片描述
所有这里应该是m,n,这个就跟重命名一样
在这里插入图片描述
d没有定义,所以是x,这样用别名的方式,就把属性解构的时候变化了,缺省值可多可少,找不到就undefined
在这里插入图片描述
别名,缺省值
在这里插入图片描述
是用属性名来分的,所以xyz没有用,用abc可以使用别名在这里插入图片描述
更加复杂的解构
在这里插入图片描述
在这里插入图片描述
能否把里面值取出来
保持一致就完全解开了

在这里插入图片描述
结构一致只要对应起来即可
在这里插入图片描述
剩余参数必须在最后
在这里插入图片描述
d是把4的中括号括起来
在这里插入图片描述
在这里插入图片描述
复杂一点的对象解构
在这里插入图片描述
想拿到url,或者两个title

在这里插入图片描述在这里插入图片描述
如果要解构该怎么做
在这里插入图片描述
后面这里名字变了,所以未定义
在这里插入图片描述
可以拿回t2,有了冒号相当于后面是别名
在这里插入图片描述
可以先拿出来然后单独解构也可以,先拿translation,然后再解一次构
在这里插入图片描述
在这里插入图片描述
之前写的main函数,就是理解高阶函数如何使用,实际上JS提供了,知道你用数组的目的就是为了这个事情

想要把数组里的元素都偏移10,可以用map函数,这是放在数组上才有的方法
在这里插入图片描述
每一个元素都要调用一回,等于元素处理回调函数
在这里插入图片描述
找到大于5的

在这里插入图片描述
所以有些语言 里在对象调用方法,python是给你不同方法塞不同类型进来

forEach,意思是每一个,undefined,python里又就地修改和返回新的对象,看一下这里,处理完了,arr的值还是没有变化
在这里插入图片描述
所以forEach这家伙比较懒,可以传参数,但是做什么事情需要你自己来,不会给你return任何值

建立一个新的数组,在新的数组里将它的结果推进去,返回值没有,但是可以自己处理
在这里插入图片描述
有的时候做映射map,有的时候做过滤filter,还有一种拿到元素做其他处理(给forEach函数,通过回调函数方式处理一个个元素)
所以可以写成for循环,也可以写成 forEach

在这里插入图片描述在这里插入图片描述
**这个y是index,x是元素element,z是数组
**
在这里插入图片描述
这样拿到了每一次的索引
在这里插入图片描述
forEach是每一个元素都要循环,所以里面加break和return都是没意义的

在这里插入图片描述
map和filter写法同样如此
在这里插入图片描述
forEach就是变了形的for循环,这种用回调的方式相当多,数组的遍历方式比较多
在这里插入图片描述

在这里插入图片描述
数组的元素可以通过push添加进去,一次可以push很多个元素
在这里插入图片描述
弹出尾部元素,pop有返回值,remove没有
在这里插入图片描述
map和filter都是会返回一个新的数组给你
在这里插入图片描述
里面什么都不做,全靠程序员自己写
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
只要大于10的平方值且是偶数的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值