JavaScriptで同様の番号で始まるグループ文字列
次のような文字列で表される数値の配列があるとします-
const arr = ["1.1","1.2","1.3","2.1","2.2","3.1","3.2","3.3","4.1","4.2"];
このような配列を1つ取り込んで、同じ番号で始まるすべての文字列を共通のサブ配列にグループ化するJavaScript関数を作成する必要があります。
したがって、関数の出力は次のようになります-
const output = [["1.1","1.2","1.3"],["2.1","2.2"],["3.1","3.2","3.3"],["4.1","4.2"]];
例
このためのコードは-
になりますconst arr = ["1.1","1.2","1.3","2.1","2.2","3.1","3.2","3.3","4.1","4.2"];
const groupSimilarStarters = arr => {
let res = [];
res = arr.reduce((acc, val, ind) => {
const firstChar = el => {
return (el || '').split('.')[0];
}
if(firstChar(val) === firstChar(arr[ind - 1])){
acc[acc.length - 1].push(val);
}else{
acc.push([val]);
};
return acc;
}, []);
return res;
}
console.log(groupSimilarStarters(arr)); 出力
コンソールの出力-
[ [ '1.1', '1.2', '1.3' ], [ '2.1', '2.2' ], [ '3.1', '3.2', '3.3' ], [ '4.1', '4.2' ] ]
-
JavaScript Number.MAX_VALUE&Number.MIN_VALUEと例
JavaScriptのNumber.MAX_VALUEおよびNumber.MIN_VALUEプロパティは、JavaScriptで可能な最大および最小の数値表現をそれぞれ表します。 以下は、JavaScript Number.MAX_VALUE&Number.MIN_VALUEプロパティのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" co
-
JavaScriptでラジオグループのラジオをチェックしますか?
以下がラジオボタングループであるとしましょう- <label> Gender: <input type="radio" name="gender" value="Male" />Male <input type="radio" name="gender" value="Female" checked/>Female </label> ラジオグループの