horcrux88
horcrux88

Reputation: 331

Javascript arrays with email address and password

I work with PHP and I am more familiar with it. I have tried an array in Javascript but keep getting a syntax error and I am not sure why. I have Googled arrays and I do not seem to get the answer.

Here is my array of Users in Javascript:

var users = [
    [
      emailAddress: '[email protected]',
      password: 'secretCat';
    ],
    [
      emailAddress: '[email protected]',
      password: 'secretCatTwo';
    ],

    [
      emailAddress: '[email protected]',
      password: 'secretCatThree';
    ],

    [
       emailAddress: '[email protected]',
       password: 'secretCatFour';
    ],

];

Am I supposed to do it differently in Javascript?

Upvotes: 1

Views: 830

Answers (4)

Amit Singh
Amit Singh

Reputation: 436

PHP supports associative arrays. But in JavaScript you can use object to reflect the behavior of associative array. Like this:

var users = [
    {
      emailAddress: '[email protected]',
      password: 'secretCat'
    },
    {
      emailAddress: '[email protected]',
      password: 'secretCatTwo'
    },

    {
      emailAddress: '[email protected]',
      password: 'secretCatThree'
    },

    {
       emailAddress: '[email protected]',
       password: 'secretCatFour'
    }

     ];

    console.log('SrNo.\tEmail\t\tPassword');
    users.forEach((item,index)=>{
    console.log(index+1+'\t'+item.emailAddress+'\t'+item.password)
    })

Upvotes: 0

wscourge
wscourge

Reputation: 11301

Use an array of objects instead:

var users = [
    {
      emailAddress: '[email protected]',
      password: 'secretCat',
    },
    {
      emailAddress: '[email protected]',
      password: 'secretCatTwo'
    },

    {
      emailAddress: '[email protected]',
      password: 'secretCatThree'
    },

    {
       emailAddress: '[email protected]',
       password: 'secretCatFour'
    },

 ];
 
 users.forEach((user, index) => {
 
  console.log("INDEX   :", index);
  console.log("EMAIL   :", user.emailAddress);
  console.log("PASSWORD:", user.password);
  
 
 })

Upvotes: 0

Mario Nikolaus
Mario Nikolaus

Reputation: 2406

Array in Javascript cannot replicate Associative array in PHP.

For your use case you would have to have array of objects like this.

var users = [
    {
      emailAddress: '[email protected]',
      password: 'secretCat';
    },
    {
      emailAddress: '[email protected]',
      password: 'secretCatTwo';
    },
    {
      emailAddress: '[email protected]',
      password: 'secretCatThree';
    },
    {
       emailAddress: '[email protected]',
       password: 'secretCatFour';
    }
 ];

Upvotes: 2

Zakaria Acharki
Zakaria Acharki

Reputation: 67525

You need an array of objects, you can't use name: value structure as array item, should be like :

var users = [
    {
      emailAddress: '[email protected]',
      password: 'secretCat'
    },
    {
      emailAddress: '[email protected]',
      password: 'secretCatTwo'
    },

    {
      emailAddress: '[email protected]',
      password: 'secretCatThree'
    },

    {
       emailAddress: '[email protected]',
       password: 'secretCatFour'
    }
];

By removing the extra ; and using the object braces {}.

Hope this helps.

Upvotes: 4

Related Questions