Python 内置函数 any()
和 all()
,它们应用于列表(JavaScript 中的数组),如下所示-
any()
:如果 iterable 的任何元素为真,则返回True
。如果可迭代对象为空,则返回False
。all()
:如果 iterable 的所有元素都为真(或者 iterable 为空),则返回True
。
我们可以为上面的内容创建自定义函数,但是如果 JavaScript 中有任何等效的内置函数可用,请告诉我。
最佳答案
Python documentation为您提供这两个函数的纯 Python 等价物;它们很容易翻译成 JavaScript:
function any(iterable) {
for (var index = 0; index < iterable.length; index++) {
if (iterable[index]) return true;
}
return false;
}
和
function all(iterable) {
for (var index = 0; index < iterable.length; index++) {
if (!iterable[index]) return false;
}
return true;
}
最近的浏览器版本(实现 ECMAScript 5.1、Firefox 1.5+、Chrome、Edge 12+ 和 IE 9)以 Array.some
的形式提供 native 支持。和 Array.every
;这些采用回调来确定某事是否为“真”:
some_array.some((elem) => !!elem );
some_array.every((elem) => !!elem );
我链接到的 Mozilla 文档包含 polyfill 以在其他 JS 实现中重新创建这两个方法。
关于javascript - JavaScript 中的 Python any() 和 all() 函数等价于什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23674744/