配列内で最長の文字列を検索(スペースを除く)JavaScript
文字列リテラルの配列を受け入れ、配列内で最も長い文字列のインデックスを返す関数を作成する必要があります。文字列の長さを計算するときに、空白が占める長さを考慮する必要はありません
2つ以上の文字列の長さが同じである場合は、最初の文字列のインデックスを返す必要があります。
配列を反復処理し、各要素を空白で分割し、再度結合して長さを計算します。その後、これをオブジェクトに格納します。そして、オブジェクトに現在保存されている長さよりも長い長さに遭遇すると、それを更新し、最後にインデックスを返します。
例
const arr = ['Hello!', 'How are you', 'Can ', 'I use', 'splice method
with', ' strings in Js?'];
const findLongestIndex = (arr) => {
const index = {
'0': 0
};
const longest = arr.reduce((acc, val, index) => {
const actualLength = val.split(" ").join("").length;
if(actualLength > acc.length){
return {
index,
length: actualLength
};
}
return acc;
}, {
index: 0,
length: 0
});
return longest.index;
};
console.log(findLongestIndex(arr)); 出力
コンソールの出力は-
になります4
-
JavaScript-配列オブジェクトの長さ
JavaScriptのlengthプロパティは、オブジェクトのサイズを返します。以下は、文字列および配列オブジェクトの長さのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document
-
JavaScriptのArray.prototype.find()メソッド。
Array.prototype.find()メソッドは、配列内の特定の条件を満たす最初の要素値を返します。 以下は、Array.prototype.find()メソッドのコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /&g