更改数组中的值(javascript)

时间:2018-06-21 13:58:39

标签: javascript podio

我的CRM系统中有一个字段,其中的订单号以下列方式列出:

544,543,53

注意:这是一个示例,这些数字的数量和大小可能会有所不同。

如何将这些数字更改为:

HPO0000000544,HPO0000000543,HPO0000000044

请注意,HPO代码中的0数量取决于订单号的大小。 HPO后面应始终有10个数字(0s +订单号)。

我试图寻找解决方案,但没有找到任何东西。不幸的是,我对javascript不够了解,无法自己编写代码。

2 个答案:

答案 0 :(得分:4)

您需要使用padStart映射数组(将数组的每个值映射到另一个值):

function toHPO(number) {
    return `HPO${number.toString().padStart(10, '0')}`;
}
const arr = [544,543,53];
console.log(arr.map(toHPO));

请注意,您可能需要根据polyfill添加一个which browsers you target

答案 1 :(得分:0)

Podio计算字段可用于ECMAscript 5,ES 2017引入了padStart(),因此您不能使用它。

var
arr = [544,543,53],
pad = "000000000"; // 9 zeros
arr.map(function (item){return "HPO" + (pad + item).substr(-10)}).join()
// HPO0000000544,HPO0000000543,HPO0000000053