JSFiddle - React, Tailwind, and code Playground
by Thunder Hemlock
JavaScript
var bikeSpecs = [{
make: "Aprilia",
model: "Aprilia Model 1"
}, {
make: "Aprilia",
model: "Aprilia Model 2"
}, {
make: "Moto Guzzi",
model: "Moto Guzzi Model 1"
}, {
make: "Moto Guzzi",
model: "Moto Guzzi Model 2"
}, {
make: "zero",
model: "zero Model 1"
}, {
make: "zero",
model: "zero Model 2"
}, {}, {
id: null
}, {
id: NaN
}, {
id: 'undefined'
}];
var selectedModels = [];
var selectedMakes = [];
var invalidEntries = 0;
var selectedMakesArray = ["Aprilia", "Moto Guzzi"];
var selectedModelsArray = ["Aprilia Model 2", "Moto Guzzi Model 1"];
//FILTER SELECTED MAKES
function pushMakes() {
for (i = 0; i < selectedMakesArray.length; i += 1) {
var thisSelectedMakeIndex = i;
var thisSelectedMakeItem = selectedMakesArray[i];
console.log('thisSelectedMakeIndex: ' + thisSelectedMakeIndex);
console.log('thisSelectedMakeItem: ' + thisSelectedMakeItem);
function isMake(obj) {
return obj;
}
function filterByMake(item) {
if (isMake(item.make == thisSelectedMakeItem)) {
selectedMakes.push(item);
console.log('selectedMakes', selectedMakes);
return true;
}
invalidEntries++;
return false;
}
bikeSpecs.filter(filterByMake);
}
pushModels();
}
pushMakes();
//FILTER SELECTED MODELS
function pushModels() {
for (i = 0; i < selectedModelsArray.length; i += 1) {
var thisSelectedModelsIndex = i;
var thisSelectedModelsItem = selectedModelsArray[i];
console.log('thisSelectedModelsIndex: ' + thisSelectedModelsIndex);
console.log('thisSelectedModelsItem: ' + thisSelectedModelsItem);
function isModel(obj) {
return obj;
}
function filterByModels(item) {
if (isModel(item.model == thisSelectedModelsItem)) {
selectedModels.push(item);
console.log('selectedModels', selectedModels);
return true;
}
invalidEntries++;
return false;
}
//var selectedMakesByModels =...