首页 >web前端 >js教程 >编写一个函数,过滤掉给定数组中的所有虚假值。

编写一个函数,过滤掉给定数组中的所有虚假值。

王林
王林原创
2024-08-11 08:43:32326浏览

Write a function that filters out all the falsy values from a given array.

 const removeFalsyValues = (arr) => {
    let truthy = []

    for(let i = 0; i < arr.length; i++){
      if(arr[i]) {
        truthy.push(arr[i])
      }
    }

    return truthy;

  }

  console.log('removeFalsyValues:', removeFalsyValues([0, 1, false, 2, "", 3, undefined, NaN, null]))

JavaScript 中的假值是在布尔上下文中计算时被视为假的值。其中包括 0、false、""(空字符串)、undefined、NaN 和 null。

该功能的工作原理如下:

  • 初始化一个空数组:该函数首先创建一个名为truthy的空数组。这将用于存储原始数组中非虚假的值。
  • 循环遍历数组:该函数使用 for 循环遍历输入数组 arr 中的每个元素。
  • 检查元素是否为真:在循环内部,有一个 if 语句检查当前元素 (arr[i]) 是否为真。如果该元素是真值(意味着它不是假值之一),它将被添加到真值数组中。
  • 返回真值数组:循环遍历完所有元素后,函数返回真值数组,该数组现在仅包含真值。
  • 输入数组为 [0, 1, false, 2, "", 3, undefined, NaN, null]。
  • 该函数将循环遍历每个元素并删除错误的元素(0、false、“”、未定义、NaN、null)。
  • 剩余的真值 (1, 2, 3) 在新数组中返回:[1, 2, 3]。

因此,这段代码的输出将是:removeFalsyValue [1, 2, 3].

以上是编写一个函数,过滤掉给定数组中的所有虚假值。的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn