You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用ethers.js解析日志后args的类型及键值获取问题

Ethers.js解析日志后args的类型与键值获取

问题场景

使用ethers.js获取并解析日志后得到变量args,执行console.log(args)输出:

[
  '1111',
  '2222',
  _name: '1111',
  _user: '2222'
]

但执行JSON.stringify(args)转换为JSON后,结果仅为:

['1111','2222']

问题解答

  1. args的类型
    这是带有自定义属性的数组。在JavaScript中,数组本质是特殊的对象,除了默认的索引属性(0、1、2...),还可以像普通对象一样添加自定义键值对属性。但JSON序列化机制只会处理数组的索引元素,忽略这些额外的自定义属性,所以JSON.stringify只输出了数组的索引项。

  2. 获取_name这类键对应的值
    有两种直接的方式:

  • 点语法访问:args._name
  • 方括号语法访问:args['_name']

如果需要批量获取所有属性(包括索引项和自定义属性),可以用Object.getOwnPropertyNames(args)获取所有属性名,再遍历取值。


内容的提问来源于stack exchange,提问作者Young Zhou

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 20:45:34