在JS中清空一个字符串

 谢海武181_160 发布于 2023-02-13 13:15

如何在JS中清空一个字符串,保持相同的对象引用?

var str= "hello";
str=""; // this will clear the string but will create a new reference 

jfriend00.. 8

字符串是不可变的(不可变),所以你不能这样做."修改"字符串的所有操作实际上都会创建一个新的/不同的字符串,因此引用将是不同的.


您的问题类型通常通过在对象中包含字符串引用来解决.您将引用传递给包含对象,然后您可以更改字符串,但仍然引用新字符串.

var container = {
    myStr: "hello";
};

container.myStr = "";

myFunc(container);

// myFunc could have modified container.myStr and the new value would be here
console.log(container.myStr)

这允许myFunc()函数调用之前,期间和之后的代码更改container.myStr并使该对象始终包含对字符串的最新值的引用.

1 个回答
  • 字符串是不可变的(不可变),所以你不能这样做."修改"字符串的所有操作实际上都会创建一个新的/不同的字符串,因此引用将是不同的.


    您的问题类型通常通过在对象中包含字符串引用来解决.您将引用传递给包含对象,然后您可以更改字符串,但仍然引用新字符串.

    var container = {
        myStr: "hello";
    };
    
    container.myStr = "";
    
    myFunc(container);
    
    // myFunc could have modified container.myStr and the new value would be here
    console.log(container.myStr)
    

    这允许myFunc()函数调用之前,期间和之后的代码更改container.myStr并使该对象始终包含对字符串的最新值的引用.

    2023-02-13 13:17 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有