substring似乎没有工作

时间:2014-09-27 05:56:55

标签: javascript string substring

getProductType = function (product) {
    var productType = '';
    if (product.standardVariable) {
        productType += 'Standard Variable, ';
    }
    if (product.basic) {
        productType += 'Basic, ';
    }
    if (product.intro) {
        productType += 'Intro, ';
    }
    if (product.fixed) {
        productType += 'Fixed, ';
    }
    if (product.equity) {
        productType += 'Equity';
    } else {
        alert(productType);
        productType.substring(0, productType.length - 2);
        alert(productType);
    }
    return productType;
};

我的测试用例是product.fixed = true,其他一切都是假的。

为什么我的提醒打印出来'固定,'?为什么子串不工作?

2 个答案:

答案 0 :(得分:2)

尝试将值赋值给变量,因为substring返回一个新字符串。

var newstr = productType.substring(0, productType.length - 2);
alert(newstr);

答案 1 :(得分:1)

字符串在JavaScript中是不可变的。此外,.substring返回一个新字符串。您需要将子字符串的结果分配给变量。您可以为此重用productType,因此这应该可以完成工作:

productType = productType.substring(0, productType.length - 2);