/// OBJECTS IN JAVASCRIPT
const testScore = {
damon: 89,
shawn: 91,
keenan: 80,
kim: 89,
};
Object.keys(testScore); // gives all keys
Object.values(testScore); // gives all values
Object.entries(testScore); // gives nested arrays of key-value pairs
// YOU CAN USE ( FOR-IN ) LOOP FOR ITERATION OVER OBJECTS
for (let person in testScore) {...}
// WE CAN'T DIRECTLY USE ( FOR-OF ) LOOP IN OBJECTS BUT WE CAN DO Like THIS:
for(let score of Object.values(testScore)){
console.log(score) // 89 91 80 89
}
//There are 2 main ways to create an Object in JavaScript
//The First Method:
let firstPlayer = new Object();
//You can add properties like this:
firstPlayer.name = 'Player 1';
firstPlayer.level = 3;
firstPlayer.inventory = ['a half-eaten cracker', 'some pocket lint', 'a flimsy tree branch'];
firstPlayer.description = 'Don't mention Player 2 around them, they'll get angry...';
//You can create methods like this:
firstPlayer.checkLevel = function() {
console.log(`${this.name} is currently... Level ${this.level}!`);
//The "this" keyword refers to the object
}
firstPlayer.checkLevel();
//This will print "Player 1 is currently... Level 3!" to the Console
//The Second Method:
let secondPlayer = {
//You can add properties like this:
name: 'Player 2',
level: 20,
inventory: ['a health potion', 'a sack of gold coins', 'a sturdy steel blade'],
description: 'Better than Player 1 in every way possible.',
//You can create methods like this:
checkLevel: function() {
console.log(`${this.name} is currently... Level ${this.level}!`);
//The "this" keyword refers to the object
}
}
secondPlayer.checkLevel();
//This will print "Player 2 is currently... Level 20!" to the Console
//And that's it! Decide what method you prefer and start making some Objects!