標準入力メニュー【1 つの入力・半角スペース区切りの1000個の入力 ほか】
【STEP: 1】コード
reader.on('close', () => {
const s = lines[0];
console.log(s);
});
入力を s で受け取って 出力。
【STEP: 2】コード(1)
reader.on('close', () => {
const [s_1, s_2] = lines[0].split(' ');
console.log(s_1 + '\n' + s_2);
});
先ず split(' ')
で文字列を半角スペース区切りの配列に変換した値を s_1, s_2で受け取ってから 改行文字を + で連結して出力しました。
【STEP: 2】コード(2)
reader.on('close', () => {
const S = lines[0].split(' ');
// ここから…forEach() で出力
S.forEach(s => {
console.log(s);
});
// ここから…for文 で出力
for (let i = 0; i < 2; i++) {
console.log(S[i]);
}
});
split(‘ ‘)で文字列を半角スペース区切りの配列に変換し、S で受け取り、各値を forEach() で出力。for文でも OK 。
【STEP: 3】コード (1)
reader.on('close', () => {
const [s_1, s_2, s_3] = lines[0].split(' ');
console.log(s_1 + '\n' + s_2 + '\n' + s_3);
});
3 つの単語に区切るので、s_1, s_2, s_3 で値を受け取って 改行文字(‘\n’)を連結して出力しました。
【STEP: 3】コード (2)
reader.on('close', () => {
const S = lines[0].split(' ');
// ここから…forEach() で出力
S.forEach(s => {
console.log(s);
});
// ここから…for文 で出力
for (let i = 0; i < 3; i++) {
console.log(S[i]);
}
});
カウント変数 i の値の上限値が 3 未満になりました。それ以外はSTEP: 2 と同じです。
【STEP: 4】コード (1)
reader.on('close', () => {
console.log(lines[0].replace(/ /g, '\n'));
});
正規表現で半角スペースに g フラグを付けて、全ての半角スペースを
'\n'
に変換して出力すれば OK 。【STEP: 4】コード (2)
reader.on('close', () => {
const S = lines[0].split(' ');
// ここから…forEach() で出力
S.forEach(s => {
console.log(s);
});
// ここから…for文 で出力
for (let i = 0; i < 10; i++) {
console.log(S[i]);
}
});
カウント変数 i の値の範囲が 0 〜 10 未満に変化。
【FINAL】コード (1)
reader.on('close', () => {
console.log(lines[0].replace(/ /g, '\n'));
});
10 行が 1000 行に増えても、コードは同じでした。
【FINAL】コード (2)
reader.on('close', () => {
const S = lines[0].split(' ');
// ここから…forEach() で出力
S.forEach(s => {
console.log(s);
});
// ここから…for文 で出力
for (let i = 0; i < 1000; i++) {
console.log(S[i]);
}
});
i の値の範囲が 0 〜 1000 未満に変わりました。
コメント