FAQ: Arrays - Introduction

This community-built FAQ covers the “Introduction” exercise from the lesson “Arrays”.

Paths and Courses
This exercise can be found in the following Codecademy content:

Learn TypeScript

FAQs on the exercise Introduction

There are currently no frequently asked questions associated with this exercise – that’s where you come in! You can contribute to this section by offering your own questions, answers, or clarifications on this exercise. Ask or answer a question by clicking reply (reply) below.

If you’ve had an “aha” moment about the concepts, formatting, syntax, or anything else with this exercise, consider sharing those insights! Teaching others and answering their questions is one of the best ways to learn and stay sharp.

Join the Discussion. Help a fellow learner on their journey.

Ask or answer a question about this exercise by clicking reply (reply) below!
You can also find further discussion and get answers to your questions over in Language Help.

Agree with a comment or answer? Like (like) to up-vote the contribution!

Need broader help or resources? Head to Language Help and Tips and Resources. If you are wanting feedback or inspiration for a project, check out Projects.

Looking for motivation to keep learning? Join our wider discussions in Community

Learn more about how to use this guide.

Found a bug? Report it online, or post in Bug Reporting

Have a question about your account or billing? Reach out to our customer support team!

None of the above? Find out where to ask other questions here!

I was able to get past the first step, but with this code I keep getting a red X on the second step. I’ve compared it to the solution, and my code SHOULD work.

let customersArray = ['Custy Stomer', 'C. Oostomar', 'C.U.S. Tomer', 3432434, 'Custo Mer', 'Custopher Ustomer', 3432435, 'Kasti Yastimeur'];

//Write Your Code here:
function checkCustomersArray(){
  for (i in customersArray){
    let el = customersArray[i]
    if (typeof el != 'string'){
      console.log(`Type error: ${el} should be a string!`);
    }
  }
}

checkCustomersArray()

function stringPush(val){
  if (typeof val === 'string'){
    customersArray.push(val);
  }
}

Why isn’t it letting me pass through to the next step?

The solution is in :

  1. deleting let el…
  2. replacing el with customersArray[i]

also use the for loop, the exercises does not have the AI built-in to recognize that what you wrote does indeed work.
Cross check closely with the solution and you’ll see.

There is something wrong with this content. I could not get a pass for the first step, it gave me errors all the time and the solution was showing for all three steps. I went here and saw how one person could get passed the first check and i copied the first part of his code and came to step two. After writing it I get error. The tips is not helpful saying “this might be a syntax error”. So what I did was to change the first function to how I think it should be and how I should get passed it, AND THEN IT WORKED. So strange that I have to change something that was not in focus?? So It has to be and error.

Code of the first function to get to step two:

function checkCustomersArray(){
  for (i in customersArray){
    let el = customersArray[i]
    if (typeof el != 'string'){
      console.log(`Type error: ${el} should be a string!`);
    }
  }
}

checkCustomersArray()

Code to pass step two:

function checkCustomersArray(){
  for (let i = 0; i < customersArray; i++){
    let el = customersArray[i]
    if (typeof el != 'string'){
      console.log(`Type error: ${el} should be a string!`);
    }
  }
}

checkCustomersArray()

function stringPush(val) {
  if(typeof val === 'string') {
    customersArray.push(val)
  }  
}

There seems to be an issue with the validation of the solution at step 1 (as already mentioned above). If I’m not totally wrong this should work just fine:

let customersArray = ['Custy Stomer', 'C. Oostomar', 'C.U.S. Tomer', 3432434, 'Custo Mer', 'Custopher Ustomer', 3432435, 'Kasti Yastimeur'];

//Write Your Code here:
const checkCustomersArray = () => {
  customersArray.forEach(el => {
    if (typeof el === 'number') 
    console.log(`Type error: ${el} should be a  string!`)
  })
}

checkCustomersArray()

Too bad that this is still broken. The validation should be applied to the output of the script or something, but depending on the exact version of “the solution” has to be very very frustrating for new comers.

let customersArray = ['Custy Stomer', 'C. Oostomar', 'C.U.S. Tomer', 3432434, 'Custo Mer', 'Custopher Ustomer', 3432435, 'Kasti Yastimeur'];

//Write Your Code here:
function checkCustomersArray() {
  for(el of customersArray) {
    if(typeof el != 'string')
      console.log(`Type error: ${el} should be a string!`)
  }
}

checkCustomersArray()

function stringPush(val) {
  if(typeof val === 'string') {
    customersArray.push(val)
  }
}

I guess I’ll have to use the “Replace with Solution” button to move forward…

Try the below. Perhaps it might be the cause.

// You wrote:
for(el of customersArray)

// Try:
for(const el of customersArray)
// or
for(let el of customersArray)
// Both should work

I think the problem with your solution is that there’s an extra space before string. I copied and pasted your solution just to make sure, and deleted the extra space, and then it worked.

I know this is an old post, but for anyone else using .forEach like it did, there are 2 issues with this code. First, you need to pass customersArray as an argument to the call to checkCustomersArray. Also in the if statement, it would be better to use
if (typeof el !== “string”), just in case there were types other than numbers in future arrays passed in.

This is my solution:
//Write Your Code here:
function checkCustomersArray() {
for (let el of customersArray) { // Declare ‘el’ with ‘let’
if (typeof el != ‘string’)
console.log(Type error: ${el} should be a string!);
}
}

checkCustomersArray();

function stringPush(val) {
if (typeof val === ‘string’) {
customersArray.push(val);
}
}