通过引用将字符串作为参数传递

tru*_*ru7 4 javascript string pass-by-reference

例如,我想改变函数中字符串的内容

function appendSeparating(s, s2, separator) {
    if (s != "")
        s += separator;
    s += s2;
}
Run Code Online (Sandbox Code Playgroud)

我想在返回时进行更改,但由于字符串是一个原语正在按值传递,因此修改不会影响原始值.

处理这个问题的最有效/最干净的方法是什么?(我尽量保持代码简洁)

Aro*_*ron 7

out如果这是你的意思,JavaScript没有参数.处理此问题的最简单方法是将字符串传递给对象.

function appendSeparating(stringObj, s2, separator) {
    if (stringObj.text != "")
        stringObj.text += separator;
    stringObj.text += s2;
}
Run Code Online (Sandbox Code Playgroud)