Javascript 使用for循环(JS)查找操作

Javascript 使用for循环(JS)查找操作,javascript,Javascript,我写了一个函数来检查3个数字之间的关系 例如,“1,2,3,6,0,6,2,3”将是“加法,乘法,加法,除法” 第三个数字是使用前两个数字执行的操作的结果 我想按此优先顺序打印操作(加法->减法->乘法->除法) 这是我的密码。看起来它不像我想的那样工作 如果有人能在这方面帮助我,我将不胜感激 函数操作(str){ 设arr=str.split(“”).map(编号); 设newArr=[]; 让加法=‘加法’; 设sub=‘减法’; 设multi=‘乘法’; 设div=‘除法’; for(设

我写了一个函数来检查3个数字之间的关系

例如,“1,2,3,6,0,6,2,3”将是“加法,乘法,加法,除法”

第三个数字是使用前两个数字执行的操作的结果

我想按此优先顺序打印操作(加法->减法->乘法->除法)


这是我的密码。看起来它不像我想的那样工作

如果有人能在这方面帮助我,我将不胜感激

函数操作(str){
设arr=str.split(“”).map(编号);
设newArr=[];
让加法=‘加法’;
设sub=‘减法’;
设multi=‘乘法’;
设div=‘除法’;
for(设i=0;i我更喜欢“提前返回”样式,所以我将其中的一部分分解为另一部分
功能:

功能映射(n、n2、n3){
如果(n3==n+n2){
返回“加法”;
}
如果(n3==n-n2){
返回“减法”;
}
如果(n3==n*n2){
返回“乘法”;
}
如果(n3==n/n2){
返回“除名”;
}
返回false;
}
功能操作(str){
设arr=str.split(',').map(Number);
设newArr=[];
for(设i=0;i控制台日志我在修复端点后运行了此操作,以加快最终检查的速度。我还替换了按空格分割,以允许使用逗号分隔的列表:

        function sayMeOperations(str) {
          let arr = str.split(",").map(Number);
          let newArr = [];
          
          let add = 'addition';
          let sub = 'subtraction';
          let multi = 'multiplication';
          let div = 'division';
          
         
          for(let i = 0; i < arr.length - 3; i++) {
            if(arr[i + 2] === arr[i] + arr[i + 1]) {
              newArr.push(add);
            } else if(arr[i + 2] === arr[i] - arr[i + 1]) {
              newArr.push(sub);
            } else if(arr[i + 2] === arr[i] * arr[i + 1]) {
              newArr.push(multi);
            } else{
              newArr.push(div);
            } 
          }
          return newArr.join(", ");
        }
函数操作(str){
设arr=str.split(“,”).map(编号);
设newArr=[];
让加法=‘加法’;
设sub=‘减法’;
设multi=‘乘法’;
设div=‘除法’;
for(设i=0;i

并使用了您输入的“1,2,3,6,0,6,2,3”,得到了“加法,乘法,除法,加法,除法”

“它似乎没有按我的预期方式工作。”-您能分享它失败的输入,预期的结果是什么,实际的结果是什么吗?乍一看,你的代码看起来还行,但我可能遗漏了什么,或者误解了你的意图。我不明白你是如何从这些数字中得到“加法、乘法、加法、除法”的。3和6似乎不正确included@Gerard他们显然跳过了那些与任何操作都不对应的操作。“不是我想的那样“这不是问题的明确解释。不要只是发布代码。解释问题是什么,以及为了得到这个结果你做了什么改变。你的代码不是op发布的代码。你的帖子不是答案。分区支票在哪里?为什么长度为-3?我投票赞成删除。我正在展示它的工作原理,但是对for循环做了一些小的修改。例如结束距离和修复最后一个else语句。我将补充这一点。谢谢最后一个else语句不需要修改。也许:建议“无操作匹配”或其他消息。你的输出没有显示它是有效的:3/6不是0-好的,除非你在做整数运算(!)。