📜  Lodash _.iterateUntil() 方法

📅  最后修改于: 2022-05-13 01:56:50.637000             🧑  作者: Mango

Lodash _.iterateUntil() 方法

Lodash _.iterateUntil()方法有两个函数,一个用作结果生成器,另一个函数停止检查,种子值 n 并返回每个生成结果的数组。 _.iterateUntil() 方法的操作是这样的,结果生成器在开始时与种子值一起传递,每个后续结果将一直持续结果未通过检查函数。

生成器函数输入起始种子值,因此会生成数组,直到停止检查函数返回false

句法:

_.iterateUntil(genFunc, checkFunc, seed_val)

参数:此方法接受三个参数,如上所述,如下所述:

  • genFunc:该函数用作结果生成器。
  • checkFunc:用作停止检查的函数。
  • seed_val:启动时传递给生成器的值。

返回值:该方法返回一个生成的数组。

注意:这在普通 JavaScript 中不起作用,因为它需要安装 lodash contrib库。

可以使用npm install lodash-contrib –save 安装lodash contrib 库

示例 1:在此示例中,我们将使用此方法生成一个数组。

Javascript
// Defining lodash contrib variable
var _ = require('lodash-contrib'); 
   
// Defining Generating function
var genFunc = 
    function(n) { 
        return n + 1; 
    }
  
// Defining stop-check function
var checkFunc = 
    function(n) { 
        return n < 11; 
    }
  
// Generating an array
var arr = _.iterateUntil(genFunc, checkFunc, 1);
console.log("Generated Array : ");
console.log(arr);


Javascript
// Defining lodash contrib variable
var _ = require('lodash-contrib'); 
   
// Defining Generating function
var genFunc = 
    function(n) { 
        return n + 2; 
    }
// Defining stop-check function
var checkFunc = 
    function(n) { 
        return n < 21; 
    }
// Generating an array
var arr = _.iterateUntil(genFunc, checkFunc, 0);
console.log("Generated Array : ");
console.log(arr);


输出:

Generated Array :
[
  2, 3, 4,  5, 6,
  7, 8, 9, 10
]

示例 2:在此示例中,我们将使用此方法生成一个包含 2 的表的数组,方法是给种子值 0 并从生成函数返回 n+2。

Javascript

// Defining lodash contrib variable
var _ = require('lodash-contrib'); 
   
// Defining Generating function
var genFunc = 
    function(n) { 
        return n + 2; 
    }
// Defining stop-check function
var checkFunc = 
    function(n) { 
        return n < 21; 
    }
// Generating an array
var arr = _.iterateUntil(genFunc, checkFunc, 0);
console.log("Generated Array : ");
console.log(arr);

输出:

Generated Array :
[
   2,  4,  6,  8, 10,
  12, 14, 16, 18, 20
]