js的重载

JavaScript017

js的重载,第1张

问:什么是重载?

答:同样的函数,不同样的参数个数。

《JS高级程序设计》里是提到过函数是没有重载的,ts中有重载。但是可以根据arguments的长度来实现重载。

最后定义的fn将前两个fn覆盖掉,所以没有达到重载的效果

虽然上述达到了想要的效果,但不是完美的实现js的重载。

高端实现js的重载做法是利用闭包。

参考资料: https://www.cnblogs.com/yugege/p/5539020.html

用ether.js 调用 safeTransferFrom 方法时总是报 safeTransferFrom is not a function 错误

在ERC721中 safeTransferFrom 是重载方法 单独根据方法名去找 就会找到两个 。

也就是contract.safeTransferFrom(…) 这种写法是有问题的。

错误写法

正确写法

参考 https://stackoverflow.com/questions/68289806/no-safetransferfrom-function-in-ethers-js-contract-instance