有没有不使用各种不同方法而使字符串变异的方法?

时间:2019-05-06 11:18:34

标签: javascript node.js

我有一个项目,我需要将一个ID分成两个单独的ID。 第一个ID的静态长度为20个字符,第二个为可变。

我目前有以下代码:

mergedUUID = "12345678902345678900123";
const serverUUIDlength = 20;
const cameraId = mergedUUID.slice(serverUUIDlength);
const deviceId = mergedUUID.substring(serverUUIDlength);

导致deviceId12345678902345678900cameraId 123

但这感觉很“愚蠢”,我使用这两种不同的方法,尽管它们实际上是相同的,有没有更好(更干净)的方法?

2 个答案:

答案 0 :(得分:0)

您正在混淆两种不同的方法。虽然它们确实很相似,但是它们之间还是有细微的差别。

substring具有“始终”工作的简便方法。例如,如果给定的startIndex大于endIndex,它将交换参数。在这种情况下,切片将返回一个空字符串。

示例代码:

var text = 'Mozilla';
console.log(text.substring(5, 2)); // => "zil" 
console.log(text.slice(5, 2));     // => ""

回答您的问题;您应该考虑使用一种方法,而不是两种。那是更好的方法。

有关其他文档,请click here

答案 1 :(得分:0)

您可以从一个开始切片,另一个从给定位置切片。

var mergedUUID = "12345678902345678900123",
    serverUUIDlength = 20,
    deviceId = mergedUUID.slice(0, serverUUIDlength),
    cameraId = mergedUUID.substring(serverUUIDlength);

console.log(deviceId);
console.log(cameraId);

相关问题