如何使用循环,导致数组作为输出
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用循环,导致数组作为输出相关的知识,希望对你有一定的参考价值。
我想将名为'days'的数组中的日期大写,并仅通过调用'console.log(days)'以数组形式获取结果 请看下面:有人可以帮我完成循环块中的代码吗?
编辑(摘要):我质疑这一点,以了解在这种情况下每个'日'的价值不会改变的原因。 Suren Srapyan为此提供了一个很好的答案:'你正在获得循环中每个项目的副本。因此,day只是项目值的副本,并将其更改为具有另一个值,不会更改数组中的项目。“
let days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];
for (day of days) {
day = day[0].toUpperCase() + day.slice(1);
// your code goes here
}
console.log(days);
答案
for of
不喜欢任何简单的循环。在它下面是另一种结构。
您将获得循环中每个项目的副本。所以day
只是项目值的副本,并将其更改为具有另一个值不会更改数组中的项目。
这是for of
循环下的内容。
let days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];
const iterator = days[Symbol.iterator]();
let item = iterator.next();
while(!item.done) {
console.log(item.value);
item = iterator.next();
}
另一答案
您还可以使用forEach循环来执行任务。
days.forEach(function(item, index, array) {
array[index] = item[0].toUpperCase() + item.slice(1)
});
console.log(days);
另一答案
你也可以使用数组的reduce方法
let days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];
let result = days.reduce((r,a)=>r.concat(a.charAt(0).toLocaleUpperCase()+a.slice(1)),[]);
console.log(result)
另一答案
尝试这个,我认为这将有所帮助
const days = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];
for (let day of days){
let firstLetter= day.substr(0,1)
let otherLetters=day.substr(1)
console.log(firstLetter.toUpperCase().concat(otherLetters));
}
以上是关于如何使用循环,导致数组作为输出的主要内容,如果未能解决你的问题,请参考以下文章
声明数组变量/// 计算所有元素的总和/打印所有元素总和/输出/foreach循环/数组作为函数的参数/调用printArray方法打印