为什么uint256变量接受数组类型输入?

时间:2019-07-04 06:17:37

标签: solidity truffle

我在uint256类型和数组之间有一些疑问。

有我的Solidity示例代码:

contract Test{
  constructor(){ }
  function getValue(uint256 _value) public returns(uint256) {
    return _value;
  }
}

我注意到getValue函数可以接受数组类型输入。

为了弄清楚这个问题,我通过松露框架编写了一个单元测试用例。

这是我的测试用例:

it('test', async function () {
  let value;
  for(let i = 0; i <= 300; i++) {
    await this.Test.getValue.call([i]);
  }
});

当i等于256时,测试用例将失败。

基本上,在我的情况下,输入仅接受uint256类型。但它也接受数组。

这是测试用例失败时的错误消息:

Error: invalid number value (arg="_value", coderType="uint256", value=[256])

有人知道原因吗?

0 个答案:

没有答案