6 ms·
than just don't save the returned value? If you don't want the result, just call someFunction() instead of const a = void someFunction()
by gbalduzzi 2y ago
than just don't save the returned value?
If you don't want the result, just call
someFunction()
instead of
const a = void someFunction()
- Mustachio 2y agoI've seen it being used before to call async operations within a class constructor. Hated it though.
- chrisldgk 2y agoIt’s good for firing off an async function in sync contexts, like for example a fetch request with side-effects being called by React‘s useEffect hook. That‘s the only context where I found any value for it though, and its usefulness is only in describing that we really don’t care if it finishes or not (since handling that case will happen somewhere else) directly in the function call.
- throwitaway1123 2y agoSome functions accept a callback and behave differently depending on whether or not the callback returns a value. If your callback is a single expression arrow function, then you might find it cleaner to just void the result instead of wrapping the body of the function in a code block (which prettier will format using multiple lines). Super contrived example: import { produce } from 'immer' let i = 1 const a = produce({ x: 0 }, draftState => i++) const b = produce({ x: 0 }, draftState => void i++) const c = produce({ x: 0 }, draftState => { i++ }) console.log({ a, b, c }) // Logs: { a: 1, b: { x: 0 }, c: { x: 0 } } The immer docs have a section about this pattern: https://immerjs.github.io/immer/return#inline-shortcuts-using-void https://immerjs.github.io/immer/return#inline-shortcuts-usin...