JavaScript 中将数字转换为字符


在给定的问题陈述中,我们被要求在 JavaScript 功能的帮助下将数字转换为字符。在 JavaScript 中,我们有一些内置函数可以将数字转换为其相应的字符,并且我们也可以使用用户定义函数进行转换。

上述问题的逻辑

众所周知,每种编程语言都定义了自己的函数来执行某些操作。因此,JavaScript 具有内置方法可以将数字转换为其相应的字符。这些函数名称为“fromCharCode”和“charCodeAt”。使用这些函数,我们需要传递输入数字,它将进行转换并以字符形式提供所需的输出。

例如

const n = 65;
const c = String.fromCharCode(n);
console.log(c); 
// Output: "A"

让我们详细了解上面的例子。在代码中,我们定义了一个存储 65 的数字,然后我们使用了 fromCharCode() 将此数字转换为字符。从该函数转换后,输出将为“A”。因为 65 在字符形式中表示 A。

算法

步骤 1 − 为了解决此问题陈述,我们使用了一个整数数组。此数组将传递给函数以转换为字符。

步骤 2 − 完成第一步后,让我们定义另一个名为 char 的变量,以将结果字符存储在其中。

步骤 3 − 因此,为了将每个数字转换为字符,我们使用了一个 for 循环,该循环将运行直到数组的长度。

步骤 4 − 为了转换数组数字,我们在此步骤中使用 JavaScript 的 String.formCharCode 方法并将其中的每个元素都传递进去。

步骤 5 − 现在转换已完成,并将转换后的字符放入步骤 2 中定义的 char 变量中。

步骤 6 − 最后,在控制台中显示所有字符。

示例

//define the numbers in array form
const numArray = [68, 69, 70];
let chars = "";
//use for loop to convert each number into character
for (let i = 0; i < numArray.length; i++) {
  chars += String.fromCharCode(numArray[i]);
}
console.log(chars);

输出

DEF

在上面的代码中,数字数组 [68, 69, 70] 使用 for 循环和 String.fromCharCode() 方法转换为其相应的字符“DEF”。我们可以在这里看到我们正在将连续的数字传递给函数,并且在每个数字转换后,68 表示 D,69 表示 E,70 表示 F。

复杂度

将单个数字转换为其等效字符的时间复杂度为 O(1) 的常数时间,因为它仅调用名为 String.fromCharCode() 的内置函数。

将数组的数字转换为其相应字符的代码的复杂度是线性时间,即 O(n),其中 n 是数组中的项目数。此代码还使用 for 循环迭代数组的所有元素,并在每次调用 fromCharCode 方法时将其转换为字符。

结论

我们使用了 JavaScript 的预定义方法 fromCharCode()。我们还了解了上述代码的时间复杂度,因为第一个示例仅花费常数时间,而另一种方法由于 for 循环而使用 O(n) 时间。

更新于: 2023-08-22

5K+ 次查看

启动您的 职业生涯

通过完成课程获得认证

开始
广告