Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

305
Views
JavaScript error: Cannot read properties of undefined (reading '1')

I have the code bellow and I'm trying to console.log the information from message of each array. The problem is there are some undefined "payload". What can I do to ignore the undefined values and keep iterating through the arrays?

const repositoriesActivities = await getUserActivities(userName)
   
    for (let i = 0; i < repositoriesActivities.length; i++) {
        let activities = repositoriesActivities[i].payload.commits[i].message;
        
        if (activities !== undefined){
           console.log(activities)
        }    
      }
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

You can use ? operand to check. Example:

const repositoriesActivities = await getUserActivities(userName)
   
    for (let i = 0; i < repositoriesActivities.length; i++) {
        let activities = repositoriesActivities[i]?.payload?.commits[i]?.message;
        
        if (activities){
           console.log(activities)
        }    
      }

Check this to get more information about optional chaining https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Optional_chaining

about 4 years ago · Juan Pablo Isaza Report

0

this means the object "commits" is empty. Can you try:

const repositoriesActivities = await getUserActivities(userName)
   
    for (let i = 0; i < repositoriesActivities.length; i++) {
        let activities = null
if(repositoriesActivities[i] && repositoriesActivities[i].payload && typeof repositoriesActivities[i].payload.commits === "object" && repositoriesActivities[i].payload.commits.length >= (i+1) && repositoriesActivities[i].payload.commits[i].message){
   activities = repositoriesActivities[i].payload.commits[i].message
} 
   
        
        if (activities !== null){
           console.log(activities)
        }    
      }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!