defined
Advanced tools
Comparing version 1.0.0 to 1.0.1
@@ -0,4 +1,6 @@ | ||
'use strict'; | ||
var defined = require('../'); | ||
var opts = { y : false, w : 4 }; | ||
var opts = { y: false, w: 4 }; | ||
var x = defined(opts.x, opts.y, opts.w, 8); | ||
console.log(x); |
12
index.js
@@ -1,5 +0,9 @@ | ||
module.exports = function () { | ||
for (var i = 0; i < arguments.length; i++) { | ||
if (arguments[i] !== undefined) return arguments[i]; | ||
} | ||
'use strict'; | ||
module.exports = function defined() { | ||
for (var i = 0; i < arguments.length; i++) { | ||
if (typeof arguments[i] !== 'undefined') { | ||
return arguments[i]; | ||
} | ||
} | ||
}; |
135
package.json
{ | ||
"name" : "defined", | ||
"version" : "1.0.0", | ||
"description" : "return the first argument that is `!== undefined`", | ||
"main" : "index.js", | ||
"directories" : { | ||
"example" : "example", | ||
"test" : "test" | ||
}, | ||
"dependencies" : {}, | ||
"devDependencies" : { | ||
"tape" : "~3.5.0" | ||
}, | ||
"scripts" : { | ||
"test" : "tape test/*.js" | ||
}, | ||
"testling" : { | ||
"files" : "test/*.js", | ||
"browsers" : { | ||
"ie" : [ 6, 7, 8, 9 ], | ||
"ff" : [ 3.5, 10, 15.0 ], | ||
"chrome" : [ 10, 22 ], | ||
"safari" : [ 5.1 ], | ||
"opera" : [ 12 ] | ||
} | ||
}, | ||
"repository" : { | ||
"type" : "git", | ||
"url" : "git://github.com/substack/defined.git" | ||
}, | ||
"homepage" : "https://github.com/substack/defined", | ||
"keywords" : [ | ||
"undefined", | ||
"short-circuit", | ||
"||", | ||
"or", | ||
"//", | ||
"defined-or" | ||
], | ||
"author" : { | ||
"name" : "James Halliday", | ||
"email" : "mail@substack.net", | ||
"url" : "http://substack.net" | ||
}, | ||
"license" : "MIT" | ||
"name": "defined", | ||
"version": "1.0.1", | ||
"description": "return the first argument that is `!== undefined`", | ||
"main": "index.js", | ||
"directories": { | ||
"example": "example", | ||
"test": "test" | ||
}, | ||
"devDependencies": { | ||
"@ljharb/eslint-config": "^21.0.0", | ||
"aud": "^2.0.1", | ||
"auto-changelog": "^2.4.0", | ||
"eslint": "=8.8.0", | ||
"in-publish": "^2.0.1", | ||
"npmignore": "^0.3.0", | ||
"safe-publish-latest": "^2.0.0", | ||
"tape": "^5.6.1" | ||
}, | ||
"scripts": { | ||
"prepack": "npmignore --auto --commentLines=autogenerated", | ||
"prepublish": "not-in-publish || npm run prepublishOnly", | ||
"prepublishOnly": "safe-publish-latest", | ||
"lint": "eslint --ext=js,mjs .", | ||
"pretest": "npm run lint", | ||
"tests-only": "tape 'test/**/*.js'", | ||
"test": "npm run tests-only", | ||
"posttest": "aud --production", | ||
"version": "auto-changelog && git add CHANGELOG.md", | ||
"postversion": "auto-changelog && git add CHANGELOG.md && git commit --no-edit --amend && git tag -f \"v$(node -e \"console.log(require('./package.json').version)\")\"" | ||
}, | ||
"testling": { | ||
"files": "test/*.js", | ||
"browsers": { | ||
"ie": [ | ||
6, | ||
7, | ||
8, | ||
9 | ||
], | ||
"ff": [ | ||
3.5, | ||
10, | ||
15 | ||
], | ||
"chrome": [ | ||
10, | ||
22 | ||
], | ||
"safari": [ | ||
5.1 | ||
], | ||
"opera": [ | ||
12 | ||
] | ||
} | ||
}, | ||
"repository": { | ||
"type": "git", | ||
"url": "git://github.com/inspect-js/defined.git" | ||
}, | ||
"homepage": "https://github.com/inspect-js/defined", | ||
"keywords": [ | ||
"undefined", | ||
"short-circuit", | ||
"||", | ||
"or", | ||
"//", | ||
"defined-or" | ||
], | ||
"author": { | ||
"name": "James Halliday", | ||
"email": "mail@substack.net", | ||
"url": "http://substack.net" | ||
}, | ||
"funding": { | ||
"url": "https://github.com/sponsors/ljharb" | ||
}, | ||
"license": "MIT", | ||
"auto-changelog": { | ||
"output": "CHANGELOG.md", | ||
"template": "keepachangelog", | ||
"unreleased": false, | ||
"commitLimit": false, | ||
"backfillLimit": false, | ||
"hideCredit": true | ||
}, | ||
"publishConfig": { | ||
"ignore": [ | ||
".github/workflows" | ||
] | ||
} | ||
} |
@@ -0,1 +1,3 @@ | ||
'use strict'; | ||
var defined = require('../'); | ||
@@ -5,19 +7,19 @@ var test = require('tape'); | ||
test('defined-or', function (t) { | ||
var u = undefined; | ||
t.equal(defined(), u, 'empty arguments'); | ||
t.equal(defined(u), u, '1 undefined'); | ||
t.equal(defined(u, u), u, '2 undefined'); | ||
t.equal(defined(u, u, u, u), u, '4 undefineds'); | ||
t.equal(defined(undefined, false, true), false, 'false[0]'); | ||
t.equal(defined(false, true), false, 'false[1]'); | ||
t.equal(defined(undefined, 0, true), 0, 'zero[0]'); | ||
t.equal(defined(0, true), 0, 'zero[1]'); | ||
t.equal(defined(3, undefined, 4), 3, 'first arg'); | ||
t.equal(defined(undefined, 3, 4), 3, 'second arg'); | ||
t.equal(defined(undefined, undefined, 3), 3, 'third arg'); | ||
t.end(); | ||
var u = void undefined; | ||
t.equal(defined(), u, 'empty arguments'); | ||
t.equal(defined(u), u, '1 undefined'); | ||
t.equal(defined(u, u), u, '2 undefined'); | ||
t.equal(defined(u, u, u, u), u, '4 undefineds'); | ||
t.equal(defined(undefined, false, true), false, 'false[0]'); | ||
t.equal(defined(false, true), false, 'false[1]'); | ||
t.equal(defined(undefined, 0, true), 0, 'zero[0]'); | ||
t.equal(defined(0, true), 0, 'zero[1]'); | ||
t.equal(defined(3, undefined, 4), 3, 'first arg'); | ||
t.equal(defined(undefined, 3, 4), 3, 'second arg'); | ||
t.equal(defined(undefined, undefined, 3), 3, 'third arg'); | ||
t.end(); | ||
}); |
@@ -0,1 +1,3 @@ | ||
'use strict'; | ||
var test = require('tape'); | ||
@@ -5,6 +7,6 @@ var defined = require('../'); | ||
test('falsy', function (t) { | ||
t.plan(1); | ||
var opts = { y : false, w : 4 }; | ||
var x = defined(opts.x, opts.y, opts.w, 8); | ||
t.equal(x, false); | ||
t.plan(1); | ||
var opts = { y: false, w: 4 }; | ||
var x = defined(opts.x, opts.y, opts.w, 8); | ||
t.equal(x, false); | ||
}); |
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
No bug tracker
MaintenancePackage does not have a linked bug tracker in package.json.
Found 1 instance in 1 package
No website
QualityPackage does not have a website.
Found 1 instance in 1 package
10746
10
40
0
0
73
8
1