vals

Extracts property values of an object.

npm install vals
7 downloads in the last month

Synopsis

vals is a utility library for extracting property values from an object with support for safe nested property lookup.

stability 3 - stable license - Unlicense Flattr this

browser support

Build Status Coverage Status Dependencies

NPM status

Install

Node.js

With NPM

npm install vals

From source

git clone https://github.com/pluma/vals.git
cd vals
npm install
make

Browser

With component

component install pluma/vals

Learn more about component.

With bower

bower install vals

Learn more about bower.

With a CommonJS module loader

Download the latest minified CommonJS release and add it to your project.

Learn more about CommonJS modules.

With an AMD module loader

Download the latest minified AMD release and add it to your project.

Learn more about AMD modules.

As a standalone library

Download the latest minified standalone release and add it to your project.

<script src="/your/js/path/vals.globals.min.js"></script>

This makes the vals module available in the global namespace.

Basic usage example

var vals = require('vals');

var obj1 = {a: 'one', b: 'two', c: 'three'};
vals(obj1, 'a', 'b'); // ['one', 'two']

var obj2 = {foo: {bar: {qux: 'one', baz: 'two'}}};
vals(obj2, ['foo', 'bar', 'qux']); // ['one']
vals.one(obj2, ['foo', 'bar', 'qux']); // 'one'
vals(obj2, ['fail', 'bar', 'qux']); // [undefined]

var obj3 = undefined;
vals(obj3, 'foo', ['bar', 'qux']); // [undefined, undefined]
vals.one(obj3, 'foo'); // undefined

API

vals(obj, paths…):Array

Extracts the property values at each given property path as an array.

vals.one(obj, path):*

Attempts to extract the property value at the given property path.

If path is an array, it will attempt to resolve the property path recursively.

If the path can not be resolved fully, the return value will be undefined.

Unlicense

This is free and unencumbered public domain software. For more information, see http://unlicense.org/ or the accompanying UNLICENSE file.

npm loves you