Skip to content

Instantly share code, notes, and snippets.

@eamonm95
Last active February 27, 2018 17:00
Show Gist options
  • Save eamonm95/701994cd22252e6dd701cb23aed903ec to your computer and use it in GitHub Desktop.
Save eamonm95/701994cd22252e6dd701cb23aed903ec to your computer and use it in GitHub Desktop.
Sample problems 2: objects and arrays
license: mit
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<script src="https://d3js.org/d3.v4.min.js"></script>
<style>
body { margin:0;position:fixed;top:0;right:0;bottom:0;left:0; }
</style>
</head>
<body>
<h1>Please look in the code below for 4 JavaScript practice problems.</h1>
<p>(These problems don't include any SVG manipulation, so you will need to open the developer console in order to see the output of your code)</p>
<script>
// Problem 1: search array1 for those states whose location is "East"
// using console.log(), print just the state name(s).
array1 = [
{name: "Arizona", location: "Southwest"},
{name: "Virginia", location: "East"},
{name: "Florida", location: "Southeast"}
];
array1.forEach(function(d){
if(d.location == "East"){
//console.log(d.name)
}
})
// Problem 2: search array1 (above) for those states whose location contains the substring "South"
// using console.log(), print just the state name(s) for these states.
array1.forEach(function(d){
if(d.location.includes("South")){
//console.log(d.name)
}
})
// Problem 3: using iteration and console.log(), print those items that are in
// array2 but NOT in array3
array2 = ['a','b','c', 65, 'd'];
array3 = ['a','c','e','f','g', 87];
array2.forEach(function(a2){
if(array3.includes(a2)){
}
else{
//console.log(a2)
}
})
// Problem 3: 'states' is an array of objects. Sort the array in ascending order
// by state name
states = [{name: "Alaska", id: "AK", population: 741894},
{name: "Virginia", id: "VA", population: 8411808},
{name: "Arizona", id: "AZ", population: 6931071},
{name: "Florida", id: "FL", population: 20984400}]
states.sort(function(a, b){
var x = a.name.toLowerCase();
var y = b.name.toLowerCase();
if (x < y) {return -1;}
if (x > y) {return 1;}
return 0;
});
//console.log(states)
// Problem 4: write code that determines which state(s) have a population value that is an even number. Print out the state(s) to the console
states.forEach(function(d){
if(d.population%2 == 0){
//console.log(d.name)
}
})
</script>
</body>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment