Home > Software design >  TypeError: Cannot read properties of undefined (reading '0'). Terminal hit this error afte
TypeError: Cannot read properties of undefined (reading '0'). Terminal hit this error afte

Time:02-16

I get such a problem in my code. I fight and fight, I still haven't found an error :(

Terminal after call this script hit " TypeError: Cannot read properties of undefined (reading '0')"


  const nft = "cardienft.json";

  
  let rares = JSON.parse(fs.readFileSync(nft));
  let nonce = 73;
  for(let i = 0; i < 2000; i  = 25) {
      let moonies = [];
      for(let j = 0; j < 25; j  ) {
        moonies.push({ uri: rares.doggies[i j].uri, moonieType: 6 });
      }
      console.log(await Gateway.forgeRares(moonies, { gasLimit: 10000000, gasPrice: 2000000000, nonce: nonce }));
      nonce  ;
      console.log(i   ' to '   (i 25)   ' forged');
  } ```

CodePudding user response:

when your code arrives at this line :

moonies.push({ uri: rares.doggies[i j].uri, moonieType: 6 });

rares is an empty object , so rares.doggies is undefined

i and j are 0 and i j = 0 it want to read 0 key from undefined(rares.doggies).

you can log rares before starting for loop to get sure and then handle its value

or you can add a ? between rares.doggies and [i j] like this:

moonies.push({ uri: rares.doggies?.[i j].uri, moonieType: 6 });

as a trick

  • Related