I’m seeking an explanation of the explanation in https://www.freecodecamp.org/learn/javascript-algorithms-and-data-structures/basic-javascript/accessing-object-properties-with-variables
I have no idea what is being explained below if someone could kindly re-word it? I understand the code and what it’s doing, I just don’t understand why.
“Another way you can use this concept is when the property’s name is collected dynamically during the program execution, as follows:”
var someObj = {
propName: "John"
};
function propPrefix(str) {
var s = "prop";
return s + str;
}
var someProp = propPrefix("Name"); // someProp now holds the value 'propName'
console.log(someObj[someProp]); // "John"
This is a toy example, which sometimes makes things harder to understand.
The big idea is that you can create a variable that holds the name of the property you want to access. Sometimes the value in that variable is built as your code is running.
Here is a different example:
// Here is an object
let someObj = {
firstName: "John",
lastName: "Smith",
age: 34
}
// Here is a function that looks for the first or last name
// I build a variable to hold the property string I want
function firstOrLast(myObj, whichName) {
// Here is my variable... It should hold either
// "firstName" or "lastName"
let thisName = whichName + "Name";
// Here is me using the variable to
// find the property I want
// (i.e. the name I want)
return myObj[thisName];
}
// Let's test the function
console.log(firstOrLast(someObj, "first"));
console.log(firstOrLast(someObj, "last"));
3 Likes
Thanks for writing that out! Your explanation is easier to digest
1 Like
I’m glad I could help! Good question.