递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 5833|回复: 14
打印 上一主题 下一主题

[视窗] 火山pc的yyjson的Bug

[复制链接]

14

主题

83

帖子

431

积分

中级会员

Rank: 3Rank: 3

积分
431
跳转到指定楼层
楼主
发表于 2023-1-30 22:44:56 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
本帖最后由 路亦洲 于 2023-1-30 22:56 编辑

请看下面图文:
各位大哥,请看这个bug用户组_Json   YYJSON数组类
所有用户  YYJSON对象类
用户信息    YYJSON对象类

文本_取中间_批量 (页面内容, "id : \"", "\"", openid组, , , , , , , )
文本_取中间_批量 (页面内容, "create_time : \"", "\"", create_time组, , , , , , , )
文本_取中间_批量 (页面内容, "nick_name : \"", "\"", nick_name组, , , , , , , )
(我确定这里取出的数据都是准确的)
列表数 = openid组.取成员数 ()
计次循环 (列表数)
  用户信息.清空 ()
  用户信息.加入文本成员 ("fakeID", openid组.取成员 (取循环索引 ()))
  用户信息.加入文本成员 ("nickname", nick_name组.取成员 (取循环索引 ()))
  用户组_Json.加入成员 (用户信息)
我这样写,本已经将对象传递到数组了,这时数组是不是每循环一次就增加一个成员,每次的数据都不一样,但是最却是只有“用户信息”的在循环的最后 一次的数据传给了数据,而且数据里的数据都是重复的同一组数据。结果如下:
{
    "Users": [
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        },
        {
            "fakeID": "oM0vZsuVkc8Vh82Wbe_kYac69cDk",
            "nickname": "庄稼"
        }
    ]
}

但是,如果我按下面代码写:
计次循环 (列表数)
  用户信息.加入文本成员 ("fakeID", openid组.取成员 (取循环索引 ()))
  用户信息.加入文本成员 ("nickname", nick_name组.取成员 (取循环索引 ()))
  用户组_Json.加入成员 (用户信息)

  用户信息.清空 ()
我把“用户信息”的数据在循环尾清空,这时我已经把数据传递给了数组,最后结果是什么数据都没有,只剩下好些对“{}”!!这都什么设计?循环一次内存不就清零了吗?“用户信息”数据传递给了数组,我没操作数组,只对“用户信息”进行操作,怎么一次循环结束后还对别的数组产生影响了呢?还有更奇怪的是,如果不在循环头清除“用户信息”的数据,最后的有数组成员数的平方组都一样的数据。比如:openid组数组有10个成员,经过循环处理,加到yyjson后,“所有用户”的数组的100个成员,到底是模块的问题,还是火山平台的问题?
回复

使用道具 举报

444

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
40599
15#
发表于 2023-2-1 12:34:51 | 只看该作者
本帖最后由 创世魂 于 2023-2-1 12:36 编辑
路亦洲 发表于 2023-2-1 12:23
就是路径的顶层要加两斜杠“//”?

是的。路径每个节点都要用小数点,然后就是加个\\
http://bbs.voldp.com/forum.php?mod=viewthread&tid=15100  这里有我开源的路径解析源码,放进去可以直接拿到火山所需要的路径
安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

14

主题

83

帖子

431

积分

中级会员

Rank: 3Rank: 3

积分
431
14#
 楼主| 发表于 2023-2-1 12:23:53 | 只看该作者
路亦洲 发表于 2023-2-1 12:22
谢谢!看明白 了,这才和精易模块的json类一样:噜阿噜

就是路径的顶层要加两斜杠“//”?
回复

使用道具 举报

14

主题

83

帖子

431

积分

中级会员

Rank: 3Rank: 3

积分
431
13#
 楼主| 发表于 2023-2-1 12:22:03 | 只看该作者
创世魂 发表于 2023-2-1 10:31
json操作,非常简单……也是两三下就搞定了。

谢谢!看明白 了,这才和精易模块的json类一样:噜阿噜
回复

使用道具 举报

444

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
40599
12#
发表于 2023-2-1 10:31:43 | 只看该作者
json操作,非常简单……也是两三下就搞定了。


main.v

11.51 KB, 下载次数: 0

安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

444

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
40599
11#
发表于 2023-2-1 10:19:25 | 只看该作者
本帖最后由 创世魂 于 2023-2-1 10:21 编辑
路亦洲 发表于 2023-1-31 14:22
json类对于多层级的json数据好不太好用

都一样的,也支持路径写入数据。。可以直接塞路径生成。你看下注释就知道了。。写代码不熟的多看注释。用起来也是非常方便。。



安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

14

主题

83

帖子

431

积分

中级会员

Rank: 3Rank: 3

积分
431
10#
 楼主| 发表于 2023-1-31 23:33:22 | 只看该作者


大哥,请问是什么问题?
回复

使用道具 举报

14

主题

83

帖子

431

积分

中级会员

Rank: 3Rank: 3

积分
431
9#
 楼主| 发表于 2023-1-31 15:15:47 | 只看该作者
shuimiao 发表于 2023-1-31 14:54
论坛有http://bbs.voldp.com/forum.php?mod=viewthread&tid=12536

谢谢!找到了!终于和易语言一样的调用了
回复

使用道具 举报

411

主题

2518

帖子

8306

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8306
8#
发表于 2023-1-31 14:54:26 | 只看该作者
回复

使用道具 举报

411

主题

2518

帖子

8306

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
8306
7#
发表于 2023-1-31 14:53:44 | 只看该作者
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-28 09:53 , Processed in 0.104747 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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