javascript - 使用扩展语法而不是 for 循环

标签 javascript for-loop spread-syntax

我想使用扩展语法来减少此代码以删除 for 循环,有什么想法吗?

function shiftChar() {
  let aCharArray = prompt("Enter a word").split("");
  for (let i = 0; i < aCharArray.length; i++) {
    aCharArray[i] = String.fromCharCode(aCharArray[i].charCodeAt(0) + 1);
  }
  alert(aCharArray);
}

这行不通

function shiftChar() {
  let aCharArray = prompt("Enter a word").split("");
  aCharArray = String.fromCharCode(...aCharArray.charCodeAt(0) + 1);
  alert(aCharArray);
}

最佳答案

扩展语法 ( it's not an operator !) 不是循环的替代品,它是 apply 的替代品.

你可以做到

const string = prompt("Enter a word");
const charCodes = [];
for (let i = 0; i < aCharArray.length; i++) {
    aCharCodes[i] = aString.charCodeAt(i) + 1;
}

虽然然后使用

String.fromCharCode(...charCodes)

代替

String.fromCharCode.apply(String, charCodes)

关于javascript - 使用扩展语法而不是 for 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49012663/

相关文章:

javascript - ASP.NET MVC 接收 "null"作为字符串而不是 null

javascript - 如何将对象作为参数传播到函数?

javascript - 在 flux 架构中,谁负责向服务器发送更新?

javascript - jQuery parents ("tr") 淡出不工作

javascript - 将对象/变量移离异步函数

javascript - 将数组迭代到自定义网格中

c++ - 如何在循环中开始新的迭代?

loops - 将一个变量的值替换为其他变量的值 Stata 13

javascript - 使用对象扩展运算符添加多个对象(ES6、JavaScript)

javascript - 列表 : {[id]:array1} and list: {. ..state.list、[id] :array1} in ReactJs? 之间有什么区别