bami
bami

Reputation: 299

javascript: alert does not work in any browser why

i have simple javascript code but the alert does not work in any browser my code is:

 function ChangeText(){
    document.getElementById("p1").innerHTML = "dorood";
    }
    var students = [student1, student2, student3];
    var student1 ={FirstName:"saeed",LastNmae:"alavi",Age:"1992"};
    var student2 = { FirstName: "mohammad", LastNmae: "alavi", Age: "1992" };
    var student3 = { FirstName: "hosein", LastNmae: "alavi", Age: "1992" };
    alert(students[1].FirstName);

Upvotes: 0

Views: 61

Answers (3)

Marco Salerno
Marco Salerno

Reputation: 5203

You just needed to move var students = [student1, student2, student3]; the variables you were referring to, weren't assigned.

    var student1 ={FirstName:"saeed",LastNmae:"alavi",Age:"1992"};
    var student2 = { FirstName: "mohammad", LastNmae: "alavi", Age: "1992" };
    var student3 = { FirstName: "hosein", LastNmae: "alavi", Age: "1992" };
    var students = [student1, student2, student3];
    
    alert(students[1].FirstName);
   

Upvotes: 2

Satpal
Satpal

Reputation: 133403

You must be getting following error which is clear

"Uncaught TypeError: Cannot read property 'FirstName' of undefined"

Define variables student1,student2... before using them when initializing students array.

function ChangeText() {
  document.getElementById("p1").innerHTML = "dorood";
}

var student1 = {
  FirstName: "saeed",
  LastNmae: "alavi",
  Age: "1992"
};
var student2 = {
  FirstName: "mohammad",
  LastNmae: "alavi",
  Age: "1992"
};
var student3 = {
  FirstName: "hosein",
  LastNmae: "alavi",
  Age: "1992"
};

var students = [student1, student2, student3];
console.log(students[1].FirstName);

Upvotes: 0

Nisarg Shah
Nisarg Shah

Reputation: 14531

You can create the array only after individual objects are created.

function ChangeText() {
  document.getElementById("p1").innerHTML = "dorood";
}

var student1 = {
  FirstName: "saeed",
  LastNmae: "alavi",
  Age: "1992"
};
var student2 = {
  FirstName: "mohammad",
  LastNmae: "alavi",
  Age: "1992"
};
var student3 = {
  FirstName: "hosein",
  LastNmae: "alavi",
  Age: "1992"
};
var students = [student1, student2, student3];
alert(students[1].FirstName);

Upvotes: 1

Related Questions