見出し画像

Hardhat入門⑥(デバッグについて) ~ブロックチェーンエンジニアになろう~

本日もHardhat公式を用いて、やっていきましょう。

今回はバグを見つけるためのデバッグについてです。

バグがあると、現在の状況はどうなっているのかを確かめたくなる時が多々あります。

そんな時、通常用いるのが「console.log()」というコマンドです。

実はHardhat Network上でconsole.log()を行うにはそのためのインポートが必要です。

それがこちらになります。

import "hardhat/console.sol";


これでconsole.logが使えるようになります。

下は公式のサンプルコードです。

function transfer(address to, uint256 amount) external {
   console.log("Sender balance is %s tokens", balances[msg.sender]);
   console.log("Trying to send %s tokens to %s", amount, to);
   
   require(balances[msg.sender] >= amount, "Not enough tokens");
   
   balances[msg.sender] -= amount;
   balances[to] += amount;
}

例えばこちらを見てみましょう。

console.log("Sender balance is %s tokens", balances[msg.sender]);
console.log("Trying to send %s tokens to %s", amount, to);​

%Sの部分にカンマの後の部分が表示されます。

ちなみに「msg.sender」で自分のことを表しています。

なので、「balances[msg.sender]」で、自分の持っているトークンの量が求められます。

実際にこんな風に表示されていました。


スクリーンショット 2021-12-08 9.00.56


この章は短かったですが、これくらいですね。

続きは次回にやっていきます。





サポートをしていただけたらすごく嬉しいです😄 いただけたサポートを励みに、これからもコツコツ頑張っていきます😊