如何在 JavaScript 中获取第一个非空/未定义的参数?
在 JavaScript 中,我们经常需要在函数中找到第一个非空/未定义的参数。这可能是一项棘手的任务,但幸运的是,有一些方法可以帮助我们实现这一点
使用 Array.prototype.find()
在 JavaScript 中,获取第一个非空/未定义参数的一种方法是使用 **Array.prototype.find()** 方法。此方法返回数组中第一个通过给定测试的元素的值。在我们的例子中,我们可以使用此方法通过传递一个检查参数是否不为 null/undefined 的测试来查找第一个非空/未定义的参数。
示例
在下面的示例中,我们定义了一个函数来查找第一个非空或未定义的参数。
<html>
<head>
<title>Example: finding first non-null arguements</title>
</head>
<body>
<h2> Array.prototype.find() Method</h2>
<div id="arguments"></div>
<div id="result"></div>
<script>
function findFirstNonNullArgument(...args) {
return args.find(arg => arg != null);
}
var result = findFirstNonNullArgument(null, undefined, "Hello", "World");
document.getElementById("arguments").innerHTML = `Arguments: null, undefined, "Hello", "World"`;
document.getElementById("result").innerHTML = "<br>First Non-Null Argument: " + result;
</script>
</body>
</html>从上面的代码中我们可以看到,findFirstNonNullArgument() 函数接受可变数量的参数,并使用 find() 方法返回第一个非空/未定义的参数。
使用 Array.prototype.filter()
在 JavaScript 中,获取第一个非空/未定义参数的另一种方法是使用 **Array.prototype.filter()** 方法。此方法创建一个包含所有通过给定测试的元素的新数组。在我们的例子中,我们可以使用此方法通过传递一个检查参数是否不为 null/undefined 的测试来查找第一个非空/未定义的参数。
示例
以下是完整的可运行代码。
<html>
<head>
<title>Example: finding first non-null arguements</title>
</head>
<body>
<h2> Array.prototype.filter() Method</h2>
<div id="arguments"></div>
<div id="result"></div>
<script>
function findFirstNonNullArgument(...args) {
return args.filter(arg => arg != null)[0];
}
document.getElementById("arguments").innerHTML = `Arguments: null, undefined, "Hello", "World"`;
document.getElementById("result").innerHTML = "<br>First non-nul argument: " + findFirstNonNullArgument(null, undefined, "Hello", "World")
</script>
</body>
</html>从上面的代码中我们可以看到,findFirstNonNullArgument() 函数接受可变数量的参数,并使用 filter() 方法返回第一个非空/未定义的参数。
使用 for 循环
在 JavaScript 中,获取第一个非空/未定义参数的另一种方法是使用 for 循环。此方法循环遍历所有参数,并检查每个参数是否不为 null/undefined。如果找到一个不为 null/undefined 的参数,则返回该参数。
示例
以下是完整的可运行代码 -
<html>
<head>
<title>Examples</title>
</head>
<body>
<div id="result"></div>
<script>
function findFirstNonNullArgument(...args) {
for (let arg of args) {
if (arg != null) {
return arg;
}
}
}
document.getElementById("result").innerHTML = findFirstNonNullArgument(null, undefined, "Hello", "World")
</script>
</body>
</html>从上面的代码中我们可以看到,findFirstNonNullArgument() 函数接受可变数量的参数,并使用 for 循环返回第一个非空/未定义的参数。
结论
在本文中,我们介绍了三种不同的方法,这些方法可用于在 JavaScript 中获取第一个非空/未定义的参数。每种方法都有其自身的优点和缺点,因此选择适合手头任务的方法非常重要。
数据结构
网络
关系数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP