设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1285|回复: 5
打印 上一主题 下一主题

[有事请教] 删除数组中元素遇到的问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
113
在线时间
29 小时
注册时间
2023-1-10
帖子
5
跳转到指定楼层
1
发表于 2023-3-3 20:13:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
16星屑
本帖最后由 代人 于 2023-3-4 15:56 编辑

打算做一个道具池,里边有二十个道具,每次随机拿取一个道具,直到道具池抽空。
没有js的基础,四处找资料把代码写成了这样:

JAVASCRIPT 代码复制
  1. $gameVariables.setValue(44,[91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110]);


初始化道具池

JAVASCRIPT 代码复制
  1. ◆变量操作:#0043 角色宝箱池/抽取 = $gameVariables.value(44)[Math.floor((Math.random()*$gameVariables.value(44).length))]
  2. var n = $gameVariables.value(43)-91 ;
  3. $gameVariables.value(44).splice(n,1) ;


————————————————————————————————————————————————————————————
在修改了判断写成赋值的部分以后,又发现上边的这串代码其实做不到删除数组中指定的数
找到了解决的方法:
JAVASCRIPT 代码复制
  1. var x = $gameVariables.value(43)
  2. var index = $gameVariables.value(44).indexOf(x);
  3. if (index > -1) {
  4. $gameVariables.value(44).splice(index, 1);}

最佳答案

查看完整内容

$gameVariables.value(44).lenth = 0 =应该是用==吧 =是赋值 ==才是判断

Lv2.观梦者

梦石
0
星屑
747
在线时间
245 小时
注册时间
2019-7-6
帖子
61
2
发表于 2023-3-3 20:13:19 | 只看该作者
本帖最后由 qq983378065 于 2023-3-4 10:01 编辑

$gameVariables.value(44).lenth = 0
=应该是用==吧
=是赋值
==才是判断

评分

参与人数 1+1 收起 理由
代人 + 1 我很赞同

查看全部评分

回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
747
在线时间
245 小时
注册时间
2019-7-6
帖子
61
3
发表于 2023-3-4 09:03:47 | 只看该作者
代码没看出问题,建议贴上整个事件

评分

参与人数 1+1 收起 理由
代人 + 1 塞糖

查看全部评分

回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
113
在线时间
29 小时
注册时间
2023-1-10
帖子
5
4
 楼主| 发表于 2023-3-4 09:19:01 | 只看该作者
qq983378065 发表于 2023-3-4 09:03
代码没看出问题,建议贴上整个事件

整个事件除了上边的那串,还写了其他对应道具的获得。

event.png (104.75 KB, 下载次数: 56)

event.png
回复

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
113
在线时间
29 小时
注册时间
2023-1-10
帖子
5
5
 楼主| 发表于 2023-3-4 15:04:22 | 只看该作者
qq983378065 发表于 2023-3-4 09:51
$gameVariables.value(44).lenth = 0
=应该是用==吧
=是赋值

谢谢您,第二次犯这错了,上次发帖也是因为这判断写成赋值,刻骨铭心了
回复

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7358
在线时间
476 小时
注册时间
2021-12-4
帖子
516
6
发表于 2023-3-4 23:20:23 | 只看该作者
本帖最后由 小秋橙 于 2023-3-4 23:21 编辑
代人 发表于 2023-3-4 15:04
谢谢您,第二次犯这错了,上次发帖也是因为这判断写成赋值,刻骨铭心了 ...


js语言千万不要用==,应该用===,因为==0的东西太多了。
而且最好写成 0 === xxxxxx,这样如果只写了一个等号就会直接报错而不是静悄悄地执行失败。

评分

参与人数 1+1 收起 理由
代人 + 1 我很赞同

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-30 23:06

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表