我试图将循环的结果打印到控制台上,但它一直在新的行上打印,而不是在同一行上打印所有内容.

这是我期待的输出:

...17°C in 1 days ... 21°C in 2 days ... 21°C in 3 days

但这是我一直得到的输出:

... 17°C in 1 days

... 21°C in 2 days

... 23°C in 3 days

我试过了我找到的大部分答案,但它们都不起作用.

const arr =[17, 21, 23];

function printForcast(arr) {  
  for (let i = 0; i < arr.length; i++) {
    let days = i;

    if(i <= days){
      days +=1;
    }

    console.log(`... ${arr[i]}°C in ${days} days`); 
  }
  return arr;
}

printForcast(arr);
<!DOCTYPE html>

推荐答案

由于console.log()总是输出一个新行,所以你需要将输出append (+=)转换为一个字符串,然后在循环结束后记录它:

const arr =[17, 21, 23];

function printForcast(arr) {
  
  let output = '';
  
  for (let i = 0; i < arr.length; i++) {
    let days = i;

   if(i <= days){
      days +=1;
   }
   output += `... ${arr[i]}°C in ${days} days`; 
 }
 
  console.log(output);
}

printForcast(arr);

Javascript相关问答推荐

如何使用JavaScript用等效的功能性HTML替换标记URL格式?

RxJS setTimeout操作符等效

为什么从liveWire info js代码传递数组我出现错误?

在贝塞尔曲线的直线上找不到交叉点:(使用@Pomax的bezier.js)

如何才能拥有在jQuery终端中执行命令的链接?

我不知道为什么setwritten包装promise 不能像我预期的那样工作

阿波罗返回的数据错误,但在网络判断器中是正确的

无法检测卡片重叠状态的问题

从页面到应用程序(NextJS):REST.STATUS不是一个函数

NG/Express API路由处理程序停止工作

如何在箭头函数中引入or子句?

使用auth.js保护API路由的Next.JS,FETCH()不起作用

以编程方式聚焦的链接将被聚焦,但样式不适用

<;img>;标记无法呈现图像

如何在Press上重新启动EXPO-AV视频?

使用Document.Evaluate() Select 一个包含撇号的HTML元素

在Odoo中如何以编程方式在POS中添加产品

使用jQuery find()获取元素的属性

react :图表负片区域不同 colored颜色

在AgGrid中显示分组行的单元格值