var s1 = '2 + 2' ; // creates a string primitive
var s2 = new String ( '2 + 2' ) ; // creates a String object
console . log ( eval ( s1 ) ) ; // returns the number 4
console . log ( eval ( s2 ) ) ; // returns the string "2 + 2"
console.log(eval(s2.valueOf())); // [...]
Answer
returns the number 4
Tags
#javascript #object #string #syntax
Question
var s1 = '2 + 2' ; // creates a string primitive
var s2 = new String ( '2 + 2' ) ; // creates a String object
console . log ( eval ( s1 ) ) ; // returns the number 4
console . log ( eval ( s2 ) ) ; // returns the string "2 + 2"
console.log(eval(s2.valueOf())); // [...]
Answer
?
Tags
#javascript #object #string #syntax
Question
var s1 = '2 + 2' ; // creates a string primitive
var s2 = new String ( '2 + 2' ) ; // creates a String object
console . log ( eval ( s1 ) ) ; // returns the number 4
console . log ( eval ( s2 ) ) ; // returns the string "2 + 2"
console.log(eval(s2.valueOf())); // [...]
Answer
returns the number 4
If you want to change selection, open document below and click on "Move attachment"
String - JavaScript | MDN
String primitives and String objects also give different results when using eval() . Primitives passed to eval are treated as source code; String objects are treated as all other objects are, by returning the object. For example:
<span>var s1 = '2 + 2'; // creates a string primitive
var s2 = new String('2 + 2'); // creates a String object
console.log(eval(s1)); // returns the number 4
console.log(eval(s2)); // returns the string "2 + 2"
For these reasons, code may break when it encounters String objects when it expects a primitive string instead, although generally authors need not worry about the distinction.
Summary
status
not learned
measured difficulty
37% [default]
last interval [days]
repetition number in this series
0
memorised on
scheduled repetition
scheduled repetition interval
last repetition or drill
Details
No repetitions
Discussion
Do you want to join discussion? Click here to log in or create user.