Underscore.js _.invokes Function函数
Underscore.js是一个JavaScript库,它提供了很多有用的功能,对编程有很大的帮助,如地图、过滤器、调用等,甚至不使用任何内置对象。
函数 _.invoke()_用于执行某些操作,如排序,连接,用一些符号连接,使数组中的元素大写等等。它通过参数列表中的函数名称直接调用该函数。所提到的函数将被应用于所有数组元素。
语法:
_.invoke( list, methodName, *arguments )
参数:该函数接受上面提到的和下面描述的三个参数。
- list。该参数用于保存数据的列表。
- methodName。该参数用于保持测试条件。
- arguments。这个参数需要在元素之间添加一些符号。
返回值:该函数返回在给定的函数作用于它之后形成的列表。
将sort()函数传递给_.invoke()函数: _.invoke()函数从列表中逐个获取元素,并对这些元素执行指定的函数。sort函数将对列表按升序排序。输出将包含一个所有排序后的列表。
示例:
<html>
<head>
<title>_.invoke() function</title>
<script type="text/javascript" src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js" >
</script>
<script type="text/javascript" src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
</script>
</head>
<body>
<script type="text/javascript">
console.log(_.invoke([[1, 6, 8],
[7, 5, 3],
[33, 76, 55]],
'sort'));
</script>
</body>
</html>
输出:
将join()函数传递给_.invoke()函数:将列表与带有 “join “的方法名称一起传递。然后列表中的元素将被串联起来。列表中可以传递任何数量的元素。
示例:
<html>
<head>
<title>_.invoke() function</title>
<script type="text/javascript" src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js" >
</script>
<script type="text/javascript" src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
</script>
</head>
<body>
<script type="text/javascript">
console.log(_.invoke([[11, 6, 8], [33, 25, 32]], 'join'));
</script>
</body>
</html>
输出:
将toUpperCase()函数传递给_.invoke()函数:函数toUpperCase()只适用于字符或字符串,而不是数字(由于明显的原因,数字不在小写或大写中)。它需要向_.invoke()函数传递字符串数组和toUpperCase函数。这些字符串将以大写字母显示在输出中。
示例:
<html>
<head>
<title>_.invoke() function</title>
<script type="text/javascript" src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js" >
</script>
<script type="text/javascript" src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
</script>
</head>
<body>
<script type="text/javascript">
console.log(_.invoke(['geeks', 'for', 'geeks'], 'toUpperCase'));
</script>
</body>
</html>
输出:
通过用符号连接来操纵数组:用不同的符号、字符等连接数组的元素。使用相同的join()函数来连接每个元素。在这种情况下,需要给出三个参数,列表名称,join()函数名称和需要连接的符号/字符。符号将被插入到每两个元素之间。
示例:
<html>
<head>
<title>_.invoke() function</title>
<script type="text/javascript" src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js" >
</script>
<script type="text/javascript" src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
</script>
</head>
<body>
<script type="text/javascript">
var manyThings = [
['geeks', 'for', 'geeks'],
['C++', 'C', 'java'],
['HTML', 'CSS', 'JS']
];
console.log(_.invoke(manyThings, 'join', ' # '));
</script>
</body>
</html>
输出: