gpt4 book ai didi

javascript - eval() 如何区别对待字符串对象和原始字符串值?

转载 作者:行者123 更新时间:2023-12-03 03:44:31 25 4
gpt4 key购买 nike

我在读我的 Javascript 书,里面讨论了这两个语句之间的区别。

var s = "hello world"; // A primitive string value
var S = new String("hello world"); // A String object

我理解其中的区别,但书中还提到(就像一个小旁注)eval() 将以不同的方式处理这些,但没有提到如何处理。

我尝试在谷歌上搜索,但找不到任何东西,所以我想访问 example.com 并开始摆弄它。我看不出它们的处理方式有什么不同。

我的问题是:eval() 方法如何以不同的方式处理这些?

最佳答案

来自MDN :

String 原语和 String 对象也给出不同的结果使用eval时。传递给 eval 的原语被视为源代码;String 对象被视为与所有其他对象一样,通过返回目的。例如:

s1 = "2 + 2";               // creates a string primitive
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"

关于javascript - eval() 如何区别对待字符串对象和原始字符串值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24458553/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com