1. Roller Coaster Rating Calculator
Design an object-oriented system for a roller coaster rating calculator. The input should be a list where each entry represents a roller coaster and contains attributes such as type, speed, and bumpiness. Provide specific formulas for calculating the ratings of different types of roller coasters, taking into account that each attribute may have different weights or that certain conditions may add a bonus score.
2. Explain Polymorphism and Inheritance
Can you explain the concepts of polymorphism and inheritance in object-oriented programming? Additionally, how would you determine if two variables are equal in JavaScript?