javascript how to return elements from a list longer than given length

Viewed 263

my professor gave me an assessment where i need to return all words from an array in a new array longer than given length lets say i have a array

array = ["han", "hans", "hanssss", "hansssss", "hansss", "hansssssssss"];

and with function getAllLongtextItems i want to return all words longer than given length

function getAllLongTextItems(array, maxLength) {
  
}

how can i do this ?

4 Answers

try:

const array = ["han", "hans", "hanssss", "hansssss", "hansss", "hansssssssss"];

function getAllLongTextItems(array, maxLength) {
  return array.filter((item) => item.length > maxLength);
}

console.log(getAllLongTextItems(array, 6));
// ["hanssss", "hansssss", "hansssssssss"]

The simplest way is to use for..of loop. Create a new empty array and push elements only if its length is greater than maxLength

const array = ["han", "hans", "hanssss", "hansssss", "hansss", "hansssssssss"];

function getAllLongTextItems(array, maxLength) {
  const result = [];

  for (let str of array) {
    if (str.length > maxLength) result.push(str);
  }
  return result;
}

const result = getAllLongTextItems(array, 5);
console.log(result);

using reduce

const array = ["han", "hans", "hanssss", "hansssss", "hansss", "hansssssssss"];

function getAllLongTextItems(array, maxLength) {
  return array.reduce((acc, curr) => {
    if (curr.length > maxLength) acc.push(curr);
    return acc;
  }, []);
}

const result = getAllLongTextItems(array, 5);
console.log(result);

using filter

const array = ["han", "hans", "hanssss", "hansssss", "hansss", "hansssssssss"];

function getAllLongTextItems(array, maxLength) {
  return array.filter((str) => str.length > maxLength);
}

const result = getAllLongTextItems(array, 5);
console.log(result);

You can do like this.

array = ["han", "hans", "hanssss", "hansssss", "hansss", "hansssssssss"];

function getAllLongTextItems(array, maxLength) {
  return array.filter(item=>item.length>maxLength);
}

let returnarray= getAllLongTextItems(array,3);
console.log(returnarray);

function getAllLongTextItems(array, maxLength) {

for(let i=0;i<array.length;i++){

 if(array[i].length > maxLength){

    console.log(array[i]);
 }

} }

Related