JavaScript is non-strictly typed language as Java,for example.
As we know, it converts value of result dependently upon context:
\"2\" + \"3\" r
\"2\" + \"3\"
This has nothing to do with type conversion.
|| returns the first truthy operand. 1 || true will give you 1
||
1 || true
1
&& returns the first falsy operand, or the second operand if both are truthy.
&&
See page 58 of the ECMAScript specification