写随机不重复数组,代码出现(reading‘0’)的一种情况

项目场景:

用另一种方法写不重复随机数,让效果展示在左边框内。但遇到未定义报错,如下:


 

问题描述:

用几种方法写不重复的随机代码,其中一个显示function函数未定义,当时自己找了很久但怎么都找不到未定义的点。搜了很多类似bug案例,但就是找不到我这个bug的问题所在。当时的js部分代码如图:


原因分析:

用来随机的getRand函数没有返回值,加个返回值,返回数组即可


解决方案:

加个返回值,返回数组。这里稍微修改了一下代码,给函数多加了个变量

 

这个错误通常出现JavaScript二维数组的循环过程中,是因为访问了未定义的属性。具体而言,错误信息"Cannot read properties of undefined (reading '0')"表示在访问一个未定义的数组元素时发生了问题。根据你提供的引用内容,我找到了一些可能导致该错误的原因和解决方法。 其中,引用提到了一个排错日记,提示了可能出现这个错误的具体情况。引用解释说,这个错误可能是由于二维数组中的行坐标越界导致的。当访问的行坐标超出了数组的范围时,就会出现undefined的情况,从而导致"Cannot read properties of undefined"的错误。解决这个问题的思路是确保循环中的行坐标不会越界。 另外,引用提供了判断一个变量是否为数组的方法,这也是解决这个错误的一个步骤。通过使用Array.isArray()方法,可以判断一个变量是否为数组。如果变量不是数组,就可以采取相应的处理措施,避免出现未定义的情况。 综上所述,解决"Cannot read properties of undefined(reading '0')"错误的方法是: 1. 确保在循环中访问二维数组时,行坐标不会越界,即要小于数组的长度。 2. 在循环之前,可以使用Array.isArray()方法判断变量是否为数组,避免在非数组上进行循环操作。 希望这些信息能对你有所帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span> #### 引用[.reference_title] - *1* *3* [排错日记:js二维数组TypeError: Cannot read properties of undefined (reading ‘2‘)](https://blog.csdn.net/weixin_45613955/article/details/130067188)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [明明是数组但是却报错Cannot read properties of undefined (reading ‘length‘)](https://blog.csdn.net/qq_33769914/article/details/122714525)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *4* [jQuery 出现Cannot read property ‘msie’ of undefined错误的解决方法](https://download.csdn.net/download/weixin_38693586/14805574)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值