iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >js fill函数填充数组或对象的问题怎么解决
  • 348
分享到

js fill函数填充数组或对象的问题怎么解决

2023-07-05 05:07:04 348人浏览 八月长安
摘要

这篇文章主要讲解了“js fill函数填充数组或对象的问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“js fill函数填充数组或对象的问题怎么解决”吧!js

这篇文章主要讲解了“js fill函数填充数组或对象的问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“js fill函数填充数组或对象的问题怎么解决”吧!

js fill函数填充数组或对象的问题

js 的数组有一个 fill 方法,可以给数组填充数据,这个方法有三个参数,从左到右依次为 要填充的数据,填充的起始位置(默认为0),停止填充的位置(默认是数组的长度),这个方法不改变原数组,如下:

let arr = [0,0,0,0,0]let res = arr.fill(1,1,2)console.log(res)    // [0, 1, 0, 0, 0]let oneParam = arr.fill(1)console.log(oneParam)  // [1,1,1,1,1]console.log(arr)   // [0,0,0,0,0]

问题: 有一次,我根据这个方法想要初始化一个二维数组,如下:

let arr = new Array(5).fill([])

我本来是想创建一个长度为5的数组,数组的每一项都是一个空数组,但是我遇到了一个问题,就是这个数组里面的5个数组其实指向的都是一个数组,即fill函数应该是直接我把传递的参数 [] 进行了赋值,所以我给其中一个数组赋值是,发现所有的数组都有值了,所以想要进行二维数组的初始化,不能这么做;

解决方法: 为了解决这个问题,想到了另外一个方法,就是使用map方法,如下:

let arr = new Array(5).fill(0).map(item=>[])

这里先创建一个长度为5,全为0的数组,然后map这个数组,返回一个空数组,此时每个数组就都不一样了,注意:这个fill(0)也是必要的,因为全为空的数组不会执行map函数

扩展:js--数组的 fill() 填充方法详解

前言

  我们知道了很多了初始化数组的方法,但是初始化数组之后,数组中的每一项元素默认为 empty 空位占位,如何对数组这些空位添加默认的元素,es6提供了 fill() 方法实现这一操作。本文总结数组 fill() 方法的详细使用。

正文

1、fill()  语法

  fill() 方法用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。不包括终止索引。返回修改后的原始数组,不创建新数组。

  使用语法:array.fill( value [,start [,end]]),其中 :

    value 用来填充数组元素的值,必填。

    start 可选起始索引,默认值为0。

    end 可选终止索引,默认值为 this.length。

2、fill() 的使用

// 当传入单个参数的时候,该方法会用该参数的值填充整个数组    var arr1 = new Array(5)    console.log(arr1.fill(1)); //[1,1,1,1,1]    var arr2 = [1, 2, 3, 4]    console.log(arr2.fill(0)); //[0,0,0,0]    // 当传入两个参数的时候,第一个参数为填充的元素,第二个为填充元素的起始位置    var arr3 = [0, 1, 2, 3, 4, 5, 6]    console.log(arr3.fill(1, 3)); //[0,1,2,1,1,1,1]    // 当传入三个参数的时候,第一个参数为填充的元素,第二个参数和第三个参数分别指填充元素的起始和终止位置,不修改终止位置元素    var arr4 = [0, 1, 2, 3, 4, 5]    console.log(arr4.fill(1, 3, 5)); //[0,1,2,1,1,5]        //如果提供的起始位置或结束位置为负数,则他们会被加上数组的长度来算出最终的位置,例如 起始位置为-1 就相当于array.length-1    var arr5 = [0, 1, 2, 3, 4, 5]    console.log(arr5.fill(1, -3));//[0,1,2,1,1,1]    var arr6 = [0, 1, 2, 3, 4, 5]    console.log(arr6.fill(1, 3, -2));//[0,1,2,1,4,5]

感谢各位的阅读,以上就是“js fill函数填充数组或对象的问题怎么解决”的内容了,经过本文的学习后,相信大家对js fill函数填充数组或对象的问题怎么解决这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: js fill函数填充数组或对象的问题怎么解决

本文链接: https://www.lsjlt.com/news/349922.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • js fill函数填充数组或对象的问题怎么解决
    这篇文章主要讲解了“js fill函数填充数组或对象的问题怎么解决”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“js fill函数填充数组或对象的问题怎么解决”吧!js ...
    99+
    2023-07-05
  • js fill函数填充数组或对象的解决方法
    目录js fill函数填充数组或对象的问题扩展:js--数组的 fill() 填充方法详解前言正文1、fill()  语法2、fill() 的使用js fill函数填充数组...
    99+
    2023-02-24
    js fill函数填充 js fill函数填充数组 js fill()填充
  • 如何解决Vue不能检测数组或对象变动的问题
    小编给大家分享一下如何解决Vue不能检测数组或对象变动的问题,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!来看一个实例:<!DOCTYPE html> <htm...
    99+
    2022-10-19
  • 如何解决vue数组和对象渲染的问题
    这篇文章给大家分享的是有关如何解决vue数组和对象渲染的问题的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。数组更新检测在 vue 中使用数组的push()、pop()、shift...
    99+
    2022-10-19
  • mybatisplus中的xml对象参数传递问题怎么解决
    这篇“mybatisplus中的xml对象参数传递问题怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“mybatisp...
    99+
    2023-07-04
  • JS怎么解决Array.fill()参数为对象指向同一个引用地址的问题
    本篇内容介绍了“JS怎么解决Array.fill()参数为对象指向同一个引用地址的问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!JS解决...
    99+
    2023-07-05
  • js怎么使用索引访问数组对象中的元素
    这篇文章主要讲解了“js怎么使用索引访问数组对象中的元素”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“js怎么使用索引访问数组对象中的元素”吧!当我们创建了...
    99+
    2022-10-19
  • Mysql存储二进制对象数据问题怎么解决
    这篇“Mysql存储二进制对象数据问题怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Mysql存储二进制对象数据问题...
    99+
    2023-07-05
  • JS解决 Array.fill()参数为对象指向同一个引用地址的问题
    目录JS解决 Array.fill()参数为对象指向同一个引用地址补充:JS中用Array.fill() 初始化 二维数组 避坑JS解决 Array.fill()参数为对象指向同一个...
    99+
    2023-02-24
    js  Array.fill()参数为对象指向同一个引用地址 js指向同一个引用地址 js  Array.fill()
  • Vue Watch方法不能监听到数组或对象值的改变怎么解决
    这篇文章主要介绍了Vue Watch方法不能监听到数组或对象值的改变怎么解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Vue Watch方法不能监听到数组或对象值的改变怎么解决文章都会有...
    99+
    2023-06-29
  • Java 对象开发技术中函数的常见问题及解决方法
    Java 是一种面向对象的编程语言,因此,在 Java 的开发中,对于对象的处理是非常重要的。而对象的处理中,函数的使用更是必不可少的。然而,在 Java 对象开发技术中,函数也存在着一些常见问题,本文将介绍这些问题,并给出相应的解决方法...
    99+
    2023-07-05
    对象 开发技术 函数
  • awk中的数组排序问题怎么解决
    在awk中,可以使用内置的sort函数对数组进行排序。sort函数的用法如下:```asort(array [, target])`...
    99+
    2023-09-16
    awk
  • 如何解决ajax回调函数中使用$(this)取不到对象的问题
    本篇内容主要讲解“如何解决ajax回调函数中使用$(this)取不到对象的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决ajax回调函数中使用$(t...
    99+
    2022-10-19
  • Java循环内的回调函数问题怎么解决
    本篇内容介绍了“Java循环内的回调函数问题怎么解决”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!问题出现在循环体内的回调函数,用一个很简单...
    99+
    2023-06-04
  • 如何解决vue数组中对象属性变化页面不渲染的问题
    这篇文章主要介绍了如何解决vue数组中对象属性变化页面不渲染的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。做checkbox多选功能的...
    99+
    2022-10-19
  • 如何解决Vue中数组和对象更改后视图不刷新的问题
    这篇文章主要为大家展示了“如何解决Vue中数组和对象更改后视图不刷新的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决Vue中数组和对象更改后视图不刷...
    99+
    2022-10-19
  • php中怎么解决serialize函数中文乱码的问题
    本文操作环境:Windows10系统、PHP7.1版、Dell G3电脑。php中怎么解决serialize函数中文乱码的问题serialize() 函数用于序列化对象或数组,并返回一个字符串。serialize() 函数序列化对象后,可以...
    99+
    2019-12-21
    php
  • ajax回调函数返回的字符串乱码问题怎么解决
    本篇内容主要讲解“ajax回调函数返回的字符串乱码问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ajax回调函数返回的字符串乱码问题怎么解决”吧! ...
    99+
    2022-10-19
  • numpy数组拷贝地址所引起的同步替换问题怎么解决
    今天小编给大家分享一下numpy数组拷贝地址所引起的同步替换问题怎么解决的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。问题出...
    99+
    2023-07-05
  • C++中vector和数组之间的转换及其效率问题怎么解决
    本文小编为大家详细介绍“C++中vector和数组之间的转换及其效率问题怎么解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“C++中vector和数组之间的转换及其效率问题怎么解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作