扫码关注官方订阅号
如果有
var a= "person"; var b= String("person"); var c= new String("person");
a,b,c三个是一个东西吗?
学习是最好的投资!
这么理解吧:
a是一个类型为string的变量,其值为"person"
b是一个类型为string的变量,其值为"person",和a一样。string()函数的作用是把其参数转换为字符串,参考:JavaScript String() 函数
c是一个类型为object的变量,其值为"person",通过new String()的方式将字符串定义为一个对象
new String()
综合以上,a、b、c的区别就是:
a和b的类型是string,而c的类型是object,你可以使用typeof(var)函数来查看变量的类型
typeof(var)
而它们的共同点就是:
a、b、c的值都是person
另外,以上三种方式定义的变量,在JavaScript字符串方法的使用上并没有区别。
不要创建 String 对象。它会拖慢执行速度,并可能产生其他副作用:
var x = "John"; var y = new String("John"); (x === y) // is false because x is a string and y is an object.
一般没有必要创建string对象。除了在变量类型上有区别外,使用上并没有别的区别。
参考:JavaScript 字符串
a b 是一个东西,都是 string 类型,a === b。而 c 则是一个 object,与 a b 不是一个东西,是基本类型 string 的封装类型。
a === b
a,b为原始数据类型,c是一个对象。b是强制类型转换吧,a本来就是字符串,所以a和b没有本质差别的
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
这么理解吧:
a是一个类型为string的变量,其值为"person"
b是一个类型为string的变量,其值为"person",和a一样。string()函数的作用是把其参数转换为字符串,参考:JavaScript String() 函数
c是一个类型为object的变量,其值为"person",通过
new String()的方式将字符串定义为一个对象综合以上,a、b、c的区别就是:
a和b的类型是string,而c的类型是object,你可以使用
typeof(var)函数来查看变量的类型而它们的共同点就是:
a、b、c的值都是person
另外,以上三种方式定义的变量,在JavaScript字符串方法的使用上并没有区别。
一般没有必要创建string对象。除了在变量类型上有区别外,使用上并没有别的区别。
参考:JavaScript 字符串
a b 是一个东西,都是 string 类型,
a === b。而 c 则是一个 object,与 a b 不是一个东西,是基本类型 string 的封装类型。
a,b为原始数据类型,c是一个对象。b是强制类型转换吧,a本来就是字符串,所以a和b没有本质差别的