Challenge 1
Create a Symbol property key
const key = Symbol("id");
const record = { [key]: 42 };
console.log(record[ ]);
Press Ctrl⌘Enter to check your answer
Practice Symbol keys, registry operations, reflection, and protocol hooks.
Challenge 1
const key = Symbol("id");
const record = { [key]: 42 };
console.log(record[ ]);
Press Ctrl⌘Enter to check your answer
Challenge 2
const key = Symbol.for("app.cache");
const same = Symbol.for( );
Press Ctrl⌘Enter to check your answer
Challenge 3
const key = Symbol.for("feature.flag");
const name = Symbol.keyFor( );
Press Ctrl⌘Enter to check your answer
Challenge 4
const keys = Object.getOwnPropertySymbols({ [Symbol("x")]: 1 });
console.log(keys.length);
// complete:
Press Ctrl⌘Enter to check your answer
Challenge 5
const keys = Reflect.ownKeys({ name: "Ada", [Symbol("id")]: 1 });
console.log(keys);
// complete:
Press Ctrl⌘Enter to check your answer
Challenge 6
const range = {
[Symbol.iterator]() {
return [1, 2][Symbol.iterator]();
}
};
console.log([...range]);
// complete:
Press Ctrl⌘Enter to check your answer
Challenge 7
const value = { [Symbol.toPrimitive]() { return 7; } };
console.log(+value);
// complete:
Press Ctrl⌘Enter to check your answer
Challenge 8
const value = { [Symbol.toStringTag]: "Record" };
console.log(Object.prototype.toString.call(value));
// complete:
Press Ctrl⌘Enter to check your answer