You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
new String('A'):构造函数,通过new字符创建一个String类型的对象实例。引用类型,且在离开其作用域或者主动销毁的时候会销毁。
String('A'):内置方法。其结果和字面量创建一个字符串一样: let str = 'A';属于基本类型,但是为什么可以使用字符串对象才有的方法和属性呢? 这就和JS内部程序有关。当内部程序检测到一个基本类型的字符串在使用方法或者属性的时候。JS会自动创建一个原始包装类型的对象((String,Boolean,Number)),然后暴露出对象的方法和属性。这个原始包装类型对象的生命周期,仅限于存在访问它的那行代码执行期间。
Activity
wolichuang commentedon Feb 18, 2021
new String("A") : 创建一个 String 类型的对象, 值为 "A"
String("A”) : 通过内置函数创建字符串
Zinaaan commentedon Feb 18, 2021
new String("A") :
返回类型:引用类型,堆内存存储
返回值:字符串对象
String("A”) :
返回类型:基本类型,栈内存存储
返回值:字符串值
BinGuo666 commentedon Feb 18, 2021
new string(‘A’)创建的是一个包装对象,其创建的是一个名称为A的object,可以对其添加属性。其真正值存放在堆中,栈中存储的是其指向堆的指针。
string('A')和直接定义‘A’没区别,其创建的是一个基本数据类型的值,其的值存放在栈中。
lanli-shu commentedon Feb 26, 2021
new String('A'):创建的是一个字符串对象,是引用类型,
String('A'):通过内置函数创建的一个基础类型的字符串,
根本就是引用类型和基础类型的区别:
引用类型的值是存储在堆里面的,但是在栈存储了指向堆的指针。
基础类型的值就是存储在栈中。
hyj443 commentedon Oct 23, 2021
前者创建一个字符串对象
后者创建的是基本字符串,是基本类型的值
字符串字面量和String调用返回的字符串,都属于基本字符串
只有将基本字符串转为字符串对象后,才能使用字符串对象的方法
当基本字符串需要调用字符串对象才有的方法,或者查询值时,js会自动将基本字符串转成字符串对象,并调用相应的方法或执行查询
afeng112blue commentedon Mar 4, 2022
new String('A'):构造函数,通过new字符创建一个String类型的对象实例。引用类型,且在离开其作用域或者主动销毁的时候会销毁。
String('A'):内置方法。其结果和字面量创建一个字符串一样: let str = 'A';属于基本类型,但是为什么可以使用字符串对象才有的方法和属性呢? 这就和JS内部程序有关。当内部程序检测到一个基本类型的字符串在使用方法或者属性的时候。JS会自动创建一个原始包装类型的对象((String,Boolean,Number)),然后暴露出对象的方法和属性。这个原始包装类型对象的生命周期,仅限于存在访问它的那行代码执行期间。
Hub-ShengQing commentedon May 27, 2022
✂【回答】
返回结果:
new String("A")
打印为String
对象,是复杂数据类型(引用类型)。String("A")
打印为A
,是简单数据类型(基础类型)。原因:
new String('A')
通过new
字符,调用了String
构造函数,创建一个对象实例。String
方法(没有通过new
生成字符串对象实例)的字符串都是基本字符串。String("A")
生成的字符串是基本字符串。🖊【便签】
简单数据类型(基础类型):
复杂数据类型(引用类型):
简单数据类型存储在栈内存,赋值的时候是将值复制一份给别人——值传递。
复杂数据类型存储在堆内存,将堆内存的地址存储在栈内存。赋值的时候是将自己的地址复制一份给别人——址传递(引用传递)。
♡【关注】
https://blog.csdn.net/Hewes
yuandaishi commentedon Jun 29, 2022
1.new 构造函数和直接执行函数的区别
2.直接执行函数,会根据函数最后的return,返回相应的值
3.new 一个构造函数,如果return的是一个基本数据类型,那么new 构造函数会返回一个对象
406410672 commentedon Feb 17, 2023
new 操作符 会创建一个新的对象
无new,则相当于方法调用