Objects and Properties
Object Literals
Create a small record with named fields.
object-literal
An object literal groups related values under property names. Reading those properties gives each field back as a normal value.
Object Literals
object_literal.js
Replay: real traced execution (multi-file project)
const name = "Ada";
const score = ({ name: name, points: 7 }).points;
const label = ({ name: name, points: 7 }).name + ":" + score;
console.log("name=" + name);
console.log("score=" + score);
console.log("label=" + label);
const name = "Bo";
const score = ({ name: name, points: 7 }).points;
const label = ({ name: name, points: 7 }).name + ":" + score;
console.log("name=" + name);
console.log("score=" + score);
console.log("label=" + label);
const name = "Cy";
const score = ({ name: name, points: 7 }).points;
const label = ({ name: name, points: 7 }).name + ":" + score;
console.log("name=" + name);
console.log("score=" + score);
console.log("label=" + label);
name ← Ada, score ← 7, ({ name: name, points: 7 }).points ← 7
1const name→ Ada = "Ada"; //@name="Bo", "Cy"2const score→ 7 = ({ name: name, points: 7 }).points→ 7;3const label→ Ada:7 = ({ name: name, points: 7 }).name→ Ada + ":" + score7;45console.log("name=" + nameAda);6console.log("score=" + score7);7console.log("label=" + labelAda:7);outputname=Ada score=7 label=Ada:7
name ← Bo, score ← 7, ({ name: name, points: 7 }).points ← 7, label ← Bo:7
1const name→ Bo = "Bo";2const score→ 7 = ({ name: name, points: 7 }).points→ 7;3const label→ Bo:7 = ({ name: name, points: 7 }).name→ Bo + ":" + score7;45console.log("name=" + nameBo);6console.log("score=" + score7);7console.log("label=" + labelBo:7);outputname=Bo score=7 label=Bo:7
name ← Cy, score ← 7, ({ name: name, points: 7 }).points ← 7, label ← Cy:7
1const name→ Cy = "Cy";2const score→ 7 = ({ name: name, points: 7 }).points→ 7;3const label→ Cy:7 = ({ name: name, points: 7 }).name→ Cy + ":" + score7;45console.log("name=" + nameCy);6console.log("score=" + score7);7console.log("label=" + labelCy:7);outputname=Cy score=7 label=Cy:7
Build a Small Record
namestarts asAda.- The object stores
nameandpoints. - Reading
.pointsgives7. - Reading
.namehelps buildAda:7. | Property | Value | | --- | --- | |name|Ada| |points|7| | label |Ada:7|
Exercise: object_literal.js
Create an object with name and points, then print the score and a name-score label