JS Built-ins
StringStringintermediate

String() vs new String() β€” primitive vs object

πŸ“– Usage Example
String(42)         // β†’ '42'
String(true)       // β†’ 'true'
String(null)       // β†’ 'null'
String(undefined)  // β†’ 'undefined'

Use String() to safely convert any value to its string representation.

String Primitive vs String Object

String(value) returns a primitive string. new String(value) returns a String object (rarely used).

Challenge: Implement isPrimitiveString(val) that returns true when val is a primitive string (not a String object).

isPrimitiveString(String('hi'))     // β†’ true
isPrimitiveString(new String('hi')) // β†’ false
πŸ’‘ Hints (2)
  • β€’ `typeof new String("x")` is `"object"`, not `"string"`.
  • β€’ `typeof String("x")` is `"string"` β€” a primitive.