Assessment wanted for the Test your skills: JSON, looking for feedback.
Source (“add your code here” exclusive)
let female = 0;
cats = JSON.parse(catString);
for (cat of cats) {
if ( cat.name === cats[cats.length - 1].name ) {
motherInfo += " & " + cat.name + ".";
} else {
motherInfo += cat.name + ", ";
}
for (i = 0; i < cat.kittens.length; i++) {
if ( cat.kittens[i].gender === "f" ) {
female += 1;
} else {
male += 1;
}
}
}
kittenInfo = `Kitten Amount:\n\t- Total: ${female + male}.\n\t- Gender:\n\t\tMale: ${male}\n\t\tFemale: ${female}`; // TODO: Investigate why escape characters don't work here
Source (total, “add your code here” included)
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="utf-8"/>
<title>JSON: Task 1</title>
<style>
p {
color: purple;
margin: 0.5em 0;
}
* {
box-sizing: border-box;
}
</style>
<link rel="stylesheet" href="../styles.css" />
</head>
<body>
<section class="preview">
</section>
</body>
<script>
const section = document.querySelector('section');
let para1 = document.createElement('p');
let para2 = document.createElement('p');
let motherInfo = 'The mother cats are called ';
let kittenInfo;
const requestURL = 'https://mdn.github.io/learning-area/javascript/oojs/tasks/json/sample.json';
fetch(requestURL)
.then(response => response.text())
.then(text => displayCatInfo(text))
function displayCatInfo(catString) {
let total = 0;
let male = 0;
// Add your code here
let female = 0;
cats = JSON.parse(catString);
for (cat of cats) {
if ( cat.name === cats[cats.length - 1].name ) {
motherInfo += " & " + cat.name + ".";
} else {
motherInfo += cat.name + ", ";
}
for (i = 0; i < cat.kittens.length; i++) {
if ( cat.kittens[i].gender === "f" ) {
female += 1;
} else {
male += 1;
}
}
}
kittenInfo = `Kitten Amount:\n\t- Total: ${female + male}.\n\t- Gender:\n\t\tMale: ${male}\n\t\tFemale: ${female}`; // TODO: Investigate why escape characters don't work here
// Don't edit the code below here!
para1.textContent = motherInfo;
para2.textContent = kittenInfo;
}
section.appendChild(para1);
section.appendChild(para2);
</script>
</html>
Output
The mother cats are called Lindy, Mina, & Antonia.
Kitten Amount: - Total: 8. - Gender: Male: 3 Female: 5