javascript - 如何在数组中循环并在JS中没有空格的情况下一起打印?
问题描述
我仍在学习 Javascript 并尝试完成 SoloLearn 上的最后一项任务。我必须一起打印输入,例如第一个“$hello$how$are$you$”。
到目前为止,我已经尝试过这个方法,方法是执行一个 for 循环并将其推入一个空的 var,然后将它们连接在一起,但到目前为止还没有运气。请问有什么建议吗?
class Add {
constructor(...words) {
var completeWord = "";
this.words = words;
this.print = function(){
for(x=0;x<words.length;x++){
completeWord.push[x];
}
}
completeWord.join("");
console.log(completeWord);
}
//your code goes here
}
var x = new Add("hehe", "hoho", "haha", "hihi", "huhu");
var y = new Add("this", "is", "awesome");
var z = new Add("lorem", "ipsum", "dolor", "sit", "amet", "consectetur", "adipiscing", "elit");
x.print();
y.print();
z.print();
解决方案
只是.join
由分隔符组成的数组,并将分隔符添加到结果字符串的两端:
class Add {
constructor(...words) {
this.words = words;
}
print() {
console.log('$' + this.words.join('$') + '$');
}
}
var x = new Add("hehe", "hoho", "haha", "hihi", "huhu");
var y = new Add("this", "is", "awesome");
var z = new Add("lorem", "ipsum", "dolor", "sit", "amet", "consectetur", "adipiscing", "elit");
x.print();
y.print();
z.print();
但是 JS 不是 Java——不需要一个类来包装一个方法。如果可能,请改用普通函数,它的开销更少,结构更有意义:
const add = (...words) => console.log('$' + words.join('$') + '$');
add("hehe", "hoho", "haha", "hihi", "huhu");
add("this", "is", "awesome");
add("lorem", "ipsum", "dolor", "sit", "amet", "consectetur", "adipiscing", "elit");
推荐阅读
- azure - Azure Function 插槽已预热,但仍遇到冷启动
- javascript - 错误:轴 #0 的数据列不能是字符串类型
- json - 比较 Firebase 实时数据库规则的子值 (.val) 时,比较的范围有多大?
- python - PyQt5 insertPlainText 来自另一个类 Python 3.8
- sql - 当一个值出现多次时选择行
- php - Composer 安装 Yii2 PHP
- python - 非常基本的 pyqt5 对话框应用程序退出并退出代码 -1073740791
- java - Java iText 没有关联的 PdfWriter 用于制作间接
- azure - Azure 网站:C 或 D 驱动器上的“主页”?
- wordpress - 流 URL 未在 WordPress 上播放