React二维数组的几种声明和使用过程_React

例如const map=[[]] 这样定义二维数组,本篇文章给大家解析一下react数组使用的正确方法和错误使用的错误原因。

const map = [[1,2],[3,4],[5,6]];

这个map变量的值是可变的,但是它的结构是不可变的,要修改它可以这样写:

map[0] = [1,2,3]

但是,如果我们这样写就会报错:

map[3] = [1,2,3]

因为我们对map的定义初始化的时候,按照react的语法,只要值不为空,那么数组的大小就是不可变的,但是数组的值是可变的。所以我们给map[3]赋值,这个map[3]并不存在,map只有0到2三个值,就会报错。

但是对于map[0],[1,2]是它的一个值,这个值可以被整体替换为 [1,2,3],没有问题。

如果我们这样做也是会报数组溢出的:

map[3][4] = 1;

如果我们想要数组的大小动态可变怎么办呢,我们可以这样来初始化:

const map = []

这里把map首先定义为一个数组,这个时候[]内没有值,就代表这是一个没有初始值的数组,其数组大小不是0,而是不确定,可以动态赋值,例如:

map[0] = []

这里我们给map加了一个0号元素,值也是一个不确定大小的未初始化数组,这个数组也可以被动态添加值:

map[0] [0] = 1;

但是我们要注意,当map[0]被赋值时,map的大小才会扩展为1,如果没有给map[0]赋值,直接给map[1]赋值时是不能成功的:

如果我们要初始化一个动态扩展的二维数组,我们应该这样做:

const map = [];//在使用时,动态扩展for(var i=0;i

我们要给map定义为一个一维数组,然后动态添加数组元素作为其元素值。

const map = [[]];

看似定义了一个空的二维数组,实则不然,这个写法的意思是定义了一个数组,数组中只有一个数组类型的元素,外层[]中的[]代表了一个元素,相当于给了外层数组初始值,这个数组就不是动态可扩展的了,而是外层只能有一个元素,这时map[1]就是不存在也不可赋值的。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。


本文地址: https://www.earthnavs.com/jishuwz/ec01c9b6a0ca3dd85702.html
全局中部横幅
网易新闻

新闻,新闻中心,包含有时政新闻,国内新闻,国际新闻,社会新闻,时事评论,新闻图片,新闻专题,新闻论坛,军事,历史,的专业时事报道门户网站

深圳新闻网

深圳新闻网是立足深圳、辐射全国的综合性区域门户网站,为用户提供新闻、视频、博客、房产、汽车、财经、健康、美食、旅游、教育、时尚、娱乐、交友等20多个频道,并拥有深圳最大的门户互动社区深圳论坛,以及深圳报业集团旗下《深圳特区报》、《深圳商报》、《深圳晚报》、《晶报》、《香港商报》、《ShenzhenDaily》等系列报刊杂志电子版

金泉翱联网

金泉翱联网精心聚合最新的网站相关知识信息,全力打造出一个全新的网站平台资源整合体。在这里,为您提供全网范围内各类问题的解答,还有丰富的天气资讯、文学辞典、历史知识以及实用的生活小常识等内容。

融云

融云,专业、简单、稳定的全球互联网通信云服务商。向开发者和企业提供即时通讯/实时音视频通信/大模型API等通讯服务,支持多种语言和部署模式:公有云、私有云、专有云和混合云,服务盖全球所有国家及地区。

【简数采集器】免费的在线网页数据采集软件

【简数采集器】是免费的、在线的网页文章采集器工具软件,功能强大,操作简单,支持AI写作和AI处理数据。云采集无需下载软件,浏览器直接登录使用;不用手写规则(智能识别+点选生成);可发送到CMS网站、数据库,导出Excel等。网页文章采集抓取工具软件首选。

大厂图床

该站点未添加描述description...

直线网

直线网开创CG艺术学习的新模式,提供优质的PS、C4D、CAD、maya、CDR、AI、AE、3dmax、HOUDINI、ZBrush、NUKE、等软件教程,CG素材下载,作品发布,CG艺术在线学习和分享平台!

逗号站长站

逗号站长站,服务于互联网站长的站长工具。

滑动验证

该站点未添加描述description...

山东欣烨生物

山东欣烨生物科技有限公司集科研,生产,销售N-乙烯基吡咯烷酮,聚维酮k30;聚乙烯吡咯烷酮,对苯二酚,乙醇钠,丁酰肼原药,固体甲醇钠对苯二酚,异戊烯醛,异戊烯醇321,防黄剂,丁酰肼原药,固体甲醇钠,甲醇钠溶液,乙醇钠溶液,丁酰肼原药,甲醇钠溶液,乙醇钠溶液,异戊烯醇,3-甲基-2-丁烯醇,异佛尔酮,无水叔丁醇,2-氨基-5-溴苯甲酸,异戊烯醛,酚醛树脂等产品