I've read that the reason String() constructor function can convert value to a string is its prototype which contains toString() method.
String(255); //"255" --> the result of the built-in toString() method
What is running "under the hood" here?
//Boolean
Boolean(23);//true --> which method is invoked here?
//Number
Number("34");//34 --> which method is invoked here?