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 =...