Creates a function that is restricted to invoking `func` once. Repeat calls to the function return the value of the first invocation. The `func` is invoked with the `this` binding and arguments of the created function.
const initialize = once(createApplication)
initialize()
initialize()
// => `createApplication` is invoked once
Name | Type | Attribute | Description |
---|---|---|---|
func | The function to restrict. |
{ "comment": "/**\r\n * Creates a function that is restricted to invoking `func` once. Repeat calls\r\n * to the function return the value of the first invocation. The `func` is\r\n * invoked with the `this` binding and arguments of the created function.\r\n *\r\n * @since 0.1.0\r\n * @category Function\r\n * @param {Function} func The function to restrict.\r\n * @returns {Function} Returns the new restricted function.\r\n * @example\r\n *\r\n * const initialize = once(createApplication)\r\n * initialize()\r\n * initialize()\r\n * // => `createApplication` is invoked once\r\n */", "meta": { "range": [ 579, 629 ], "filename": "once.js", "lineno": 19, "path": "C:\\Users\\beaujeup\\projects\\jsdoc-template\\examples\\lodash\\lodash-repo", "code": { "id": "astnode100006511", "name": "once", "type": "FunctionDeclaration", "paramnames": [ "func" ] } }, "description": "Creates a function that is restricted to invoking `func` once. Repeat calls\rto the function return the value of the first invocation. The `func` is\rinvoked with the `this` binding and arguments of the created function.", "since": "0.1.0", "tags": [ { "originalTitle": "category", "title": "category", "text": "Function", "value": "Function" } ], "params": [ { "type": { "names": [ "function" ] }, "description": "The function to restrict.", "name": "func" } ], "returns": [ { "type": { "names": [ "function" ] }, "description": "Returns the new restricted function." } ], "examples": [ "const initialize = once(createApplication)\rinitialize()\rinitialize()\r// => `createApplication` is invoked once" ], "name": "once", "longname": "once", "kind": "function", "scope": "global", "___id": "T000002R000608", "___s": true, "filepath": "once.js" }