The first example is to demonstrate the power and the accessibility JSON offers to developers. This is a JavaScript code designed to make things easier for the -new to JSON- developer:
function User(fName, lName, age, friends)
{
var UserObject = {
FirstName: fName,
LastName: lName,
Age: age,
Friends: [],
IsUnderAge: function()
{
return this.Age > 21 ? true : false;
}
};
var FriendsCounter = 0;
for (var frnd in friends)
{
UserObject.Friends[FriendsCounter] = friends[frnd];
FriendsCounter++;
}
return UserObject;
}
This is the constructor. Same as in every OOP language, each object needs to have constructors.
Now, let's say I let a user named Igor fill an information form containing the following fields:
- First Name
- Last Name
- Age
- Friends - each friend will have the same fields.
On the "Submit" button, I have a call for a "CreateUser
" function which will take the needed fields (using jQuery - but that's for another post) and send to the User
constructor.
function createUser()
{
var IgorsFriends = [];
IgorsFriends[0] = new User("Uri", "GamingTech", 29, []);
IgorsFriends[1] = new User("Sergey", "GamingTech", 35, [
new User("Noam", "GamingTech", 27, [])
]);
var Igor = new User("Igor", "GamingTech", 33, IgorsFriends);
}
The outcome of this function will be a variable named Igor
which will have the following attributes:
The following methods:
And the following arrays:
Friends
- which will contain a list of friends as User
objects.
Good luck!