当前位置: 首页 > news >正文

建设网站的体会title:网站建设公司实力

建设网站的体会,title:网站建设公司实力,优质网站策划,企业网站首页设计公司数组的成员有时还是数组,Array.prototype.flat()用于将嵌套的数组“拉平”,变成一维的数组。该方法返回一个新数组,对原数据没有影响。 [1, 2, [3, 4]].flat() // [1, 2, 3, 4]那flat怎么来实现呢? 1、使用while循环 实现的代码…

数组的成员有时还是数组,Array.prototype.flat()用于将嵌套的数组“拉平”,变成一维的数组。该方法返回一个新数组,对原数据没有影响。

[1, 2, [3, 4]].flat()
// [1, 2, 3, 4]

那flat怎么来实现呢?

1、使用while循环

实现的代码如下:

        // 实现数组中的flat拉平函数let arr = [20, [6, 7, 8], [2, [9, 10]], 17]const flatten = function (arr) {while (arr.some(v => Array.isArray(v))) {arr = [].concat(...arr)}return arr;}console.log(flatten(arr)) // [20, 6, 7, 8, 2, 9, 10, 17]

2、使用数组中的map方法

        // 实现数组中的flat拉平函数let arr = [20, [6, 7, 8], [2, [9, 10]], 17]const flatten = function (arr) {return [].concat(...arr.map(v => Array.isArray(v) ? flatten(v) : v))}console.log(flatten(arr)) // [20, 6, 7, 8, 2, 9, 10, 17]

关于第二种方法的理解 最后的是

[].concat(...[20, [6, 7, 8], [2, 9, 10], 17]) // [20, 6, 7, 8, 2, 9, 10, 17]

扩展运算符会展开数组,相当于拉平一级。
concat方法合并数组,是往新数组中添加的数组成员,例如,[].concat(…[20, [6, 7, 8]])相当于[].concat(20, [6, 7, 8]),往[]这个空数组中添加的是数字20和[6, 7, 8]这个数组的成员6、7、8,所以[].concat(…[20, [6, 7, 8]])就相当于拉平了数组。

在用第二种方法时,我刚开始是有些不理解的,不过我推理了一下,确实是对的,其中的关键点在于递归调用、concat方法和扩展运算符的应用

最后,我们看一下concat的用法,
concat()方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
注意:合并的时候,添加的是数组成员,一定要谨记,如果不是数组,也当做成员,一起添加到新数组中。

let arr1 = [1,2,3];
let arr2 = [4,5,6];
let arr3 = [7,8,9];
let num = 10;console.log(arr1.concat(arr2,arr3,num)); // [1,2,3,4,5,6,7,8,9,10]

我们再看一下这个例子:

let arr1 = [1,[2,3]];
let num = 10;console.log([].concat(arr1,num)); // [1,[2,3],10]console.log([].concat(...arr1,num)); // [1,2,3,10] 

可以看到因为使用了扩展运算符,所以最后打印的结果是不一样的。

http://www.yayakq.cn/news/207650/

相关文章:

  • 西安网站设计哪家公司好昆明百度搜索排名优化
  • 可以做免费推广的网站吗南宁seo推广服务
  • 美德的网站建设微信企业网站 源码
  • 网站中弹出广告怎么做九龙坡网站建设
  • 怎么制作网站横幅南宁公司网站开发
  • 高端网站建设服务商上海雍熙企业网站可以做跨境电商吗
  • 做网站会有侵权大学生个体创业的网站建设
  • 网站空间代理加盟goule wordpress
  • 网站首页锚文本网页设计实例有代码
  • 有口碑的南通网站建设北京建机官网
  • 网站建设维护文档公司网站模板中英文
  • 曹县汽车网站建设h5商城网站怎么建设
  • 网站建设推广平台有哪些啦啦啦资源视频在线看
  • 上上海海网网站站建设北京专业网站建设大全
  • 手机wap网站建设解决方案wordpress表单提交 阿里云邮箱
  • 购物网站建设 费用深圳网站做优化哪家公司好
  • 怎样给网站做排名优化做网页怎么做
  • 功能型pc端网站框架seo模板建站
  • 微信网站制作企业wordpress 文章 nofollow
  • 手机网站开发报价单电子商务网站建设选择题
  • 网站竞价推广防城港市建设工程质量监督站网站
  • 网站建设详情页家具企业网站建设
  • 一个好的网站建设需要多少钱无限时间看片直播
  • win8导航网站源码网站后台文章添加成功 不显示
  • 南京手机网站设计专业资源网站怎么做
  • 网站pc端网址和手机端网址建设电商网站什么要求高
  • 个人网站域名备案手机ftp传网站文件
  • 东莞网站公司建设网站wordpress七牛云缓存插件
  • 东营网站关键词优化中山网站设计服务
  • 哪些网站设计的比较好iis 5 新建网站