函数式编程-是否有一个不会自动变平的jQuery地图实用程序?

我正在将一个包含两个域的数组从一个域(日期)映射到另一个域(时间戳)。 不幸的是,它看起来像Array.map自动平整我返回的两个元组,而我看不到do_not_flatten参数。

我是否在库中丢失了无法自动拼合的其他内容?

附录:我假设我不应该使用不会自动变平的2980432269669674021888,因为它是JavaScript 1.6。 据我了解,出于兼容性原因,jQuery应该抽象出我正在运行的JavaScript版本。

cdleary asked 2020-07-24T10:08:41Z
2个解决方案
64 votes

我遇到了同样的问题; 事实证明,您可以只从$ .map回调内部返回嵌套数组,而不会展平外部数组:

$.map([1, 2, 3], function(element, index) {
  return [ element + 1, element + 2 ];
});
=> [2, 3, 3, 4, 4, 5]

鉴于:

$.map([1, 2, 3], function(element, index) {
  return [ [ element + 1, element + 2 ] ];
});
=> [[2, 3], [3, 4], [4, 5]]

希望有帮助!

T.J. VanSlyke answered 2020-07-24T10:09:05Z
1 votes

我不太确定什么是“二元组”,也不太确定我从所查看的Google搜索结果中得出正确的答案。 但是您是否看过jQuery.each?

evilpenguin answered 2020-07-24T10:09:25Z
translate from https://stackoverflow.com:/questions/703355/is-there-a-jquery-map-utility-that-doesnt-automically-flatten