# defined **Repository Path**: mirrors_brimworks/defined ## Basic Information - **Project Name**: defined - **Description**: return the first argument that is `!== undefined` - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-09-24 - **Last Updated**: 2026-02-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # defined return the first argument that is `!== undefined` [![browser support](http://ci.testling.com/substack/defined.png)](http://ci.testling.com/substack/defined) [![build status](https://secure.travis-ci.org/substack/defined.png)](http://travis-ci.org/substack/defined) Most of the time when I chain together `||`s, I actually just want the first item that is not `undefined`, not the first non-falsy item. This module is like the defined-or (`//`) operator in perl 5.10+. # example ``` js var defined = require('defined'); var opts = { y : false, w : 4 }; var x = defined(opts.x, opts.y, opts.w, 100); console.log(x); ``` ``` $ node example/defined.js false ``` The return value is `false` because `false` is the first item that is `!== undefined`. # methods ``` js var defined = require('defined') ``` ## var x = defined(a, b, c...) Return the first item in the argument list `a, b, c...` that is `!== undefined`. If all the items are `=== undefined`, return undefined. # install With [npm](https://npmjs.org) do: ``` npm install defined ``` # license MIT