Type is a characteristic of a value affecting what kind of data or structure it can store. For example talking of Data Types in JavaScript a Boolean only holds true/false values, whereas a String holds text strings, a Number holds numbers of any kind, and so on. And talking about Structured Types, the other part of JavaScript Type System we can say they are constructed using exactly that sort of constructor.

A value's data type also affects which operations are valid on that value. For example, an integer can be multiplied by an integer, but not by a string. This is also useful knowledge for comparsion between data types. And the same time comparsion between sturctured types is not so "easy to make" topic: even if last structure is the same, there might bee inherited structures inside of the Prototype Chain.