Bump to v3.3.0.

This commit is contained in:
jdalton
2015-02-20 00:57:26 -08:00
parent 05cb7419a6
commit 5dc85cc9a8
91 changed files with 830 additions and 408 deletions

View File

@@ -26,7 +26,9 @@ var baseCopy = require('../internal/baseCopy'),
* Shape.call(this);
* }
*
* Circle.prototype = _.create(Shape.prototype, { 'constructor': Circle });
* Circle.prototype = _.create(Shape.prototype, {
* 'constructor': Circle
* });
*
* var circle = new Circle;
* circle instanceof Circle;

View File

@@ -33,7 +33,9 @@ var baseCallback = require('../internal/baseCallback'),
* 'pebbles': { 'age': 1, 'active': true }
* };
*
* _.findKey(users, function(chr) { return chr.age < 40; });
* _.findKey(users, function(chr) {
* return chr.age < 40;
* });
* // => 'barney' (iteration order is not guaranteed)
*
* // using the `_.matches` callback shorthand

View File

@@ -33,7 +33,9 @@ var baseCallback = require('../internal/baseCallback'),
* 'pebbles': { 'age': 1, 'active': true }
* };
*
* _.findLastKey(users, function(chr) { return chr.age < 40; });
* _.findLastKey(users, function(chr) {
* return chr.age < 40;
* });
* // => returns `pebbles` assuming `_.findKey` returns `barney`
*
* // using the `_.matches` callback shorthand

View File

@@ -16,10 +16,17 @@ var baseForOwn = require('../internal/baseForOwn'),
* @returns {Object} Returns `object`.
* @example
*
* _.forOwn({ '0': 'zero', '1': 'one', 'length': 2 }, function(n, key) {
* function Foo() {
* this.a = 1;
* this.b = 2;
* }
*
* Foo.prototype.c = 3;
*
* _.forOwn(new Foo, function(value, key) {
* console.log(key);
* });
* // => logs '0', '1', and 'length' (iteration order is not guaranteed)
* // => logs 'a' and 'b' (iteration order is not guaranteed)
*/
function forOwn(object, iteratee, thisArg) {
if (typeof iteratee != 'function' || typeof thisArg != 'undefined') {

View File

@@ -15,10 +15,17 @@ var baseForRight = require('../internal/baseForRight'),
* @returns {Object} Returns `object`.
* @example
*
* _.forOwnRight({ '0': 'zero', '1': 'one', 'length': 2 }, function(n, key) {
* function Foo() {
* this.a = 1;
* this.b = 2;
* }
*
* Foo.prototype.c = 3;
*
* _.forOwnRight(new Foo, function(value, key) {
* console.log(key);
* });
* // => logs 'length', '1', and '0' assuming `_.forOwn` logs '0', '1', and 'length'
* // => logs 'b' and 'a' assuming `_.forOwn` logs 'a' and 'b'
*/
function forOwnRight(object, iteratee, thisArg) {
iteratee = bindCallback(iteratee, thisArg, 3);

View File

@@ -14,7 +14,7 @@ var baseFunctions = require('../internal/baseFunctions'),
* @example
*
* _.functions(_);
* // => ['all', 'any', 'bind', ...]
* // => ['after', 'ary', 'assign', ...]
*/
function functions(object) {
return baseFunctions(object, keysIn(object));

View File

@@ -16,7 +16,9 @@ var hasOwnProperty = objectProto.hasOwnProperty;
* @returns {boolean} Returns `true` if `key` is a direct property, else `false`.
* @example
*
* _.has({ 'a': 1, 'b': 2, 'c': 3 }, 'b');
* var object = { 'a': 1, 'b': 2, 'c': 3 };
*
* _.has(object, 'b');
* // => true
*/
function has(object, key) {

View File

@@ -21,16 +21,14 @@ var hasOwnProperty = objectProto.hasOwnProperty;
* @returns {Object} Returns the new inverted object.
* @example
*
* _.invert({ 'first': 'fred', 'second': 'barney' });
* // => { 'fred': 'first', 'barney': 'second' }
* var object = { 'a': 1, 'b': 2, 'c': 1 };
*
* // without `multiValue`
* _.invert({ 'first': 'fred', 'second': 'barney', 'third': 'fred' });
* // => { 'fred': 'third', 'barney': 'second' }
* _.invert(object);
* // => { '1': 'c', '2': 'b' }
*
* // with `multiValue`
* _.invert({ 'first': 'fred', 'second': 'barney', 'third': 'fred' }, true);
* // => { 'fred': ['first', 'third'], 'barney': ['second'] }
* _.invert(object, true);
* // => { '1': ['a', 'c'], '2': ['b'] }
*/
function invert(object, multiValue, guard) {
if (guard && isIterateeCall(object, multiValue, guard)) {

View File

@@ -28,8 +28,10 @@ var baseCallback = require('../internal/baseCallback'),
* @returns {Object} Returns the new mapped object.
* @example
*
* _.mapValues({ 'a': 1, 'b': 2, 'c': 3} , function(n) { return n * 3; });
* // => { 'a': 3, 'b': 6, 'c': 9 }
* _.mapValues({ 'a': 1, 'b': 2 }, function(n) {
* return n * 3;
* });
* // => { 'a': 3, 'b': 6 }
*
* var users = {
* 'fred': { 'user': 'fred', 'age': 40 },

View File

@@ -43,7 +43,9 @@ var baseMerge = require('../internal/baseMerge'),
* };
*
* _.merge(object, other, function(a, b) {
* return _.isArray(a) ? a.concat(b) : undefined;
* if (_.isArray(a)) {
* return a.concat(b);
* }
* });
* // => { 'fruits': ['apple', 'banana'], 'vegetables': ['beet', 'carrot'] }
*/

View File

@@ -25,18 +25,16 @@ var arrayEach = require('../internal/arrayEach'),
* @returns {*} Returns the accumulated value.
* @example
*
* var squares = _.transform([1, 2, 3, 4, 5, 6], function(result, n) {
* n *= n;
* if (n % 2) {
* return result.push(n) < 3;
* }
* _.transform([2, 3, 4], function(result, n) {
* result.push(n *= n);
* return n % 2 == 0;
* });
* // => [1, 9, 25]
* // => [4, 9]
*
* var mapped = _.transform({ 'a': 1, 'b': 2, 'c': 3 }, function(result, n, key) {
* _.transform({ 'a': 1, 'b': 2 }, function(result, n, key) {
* result[key] = n * 3;
* });
* // => { 'a': 3, 'b': 6, 'c': 9 }
* // => { 'a': 3, 'b': 6 }
*/
function transform(object, iteratee, accumulator, thisArg) {
var isArr = isArray(object) || isTypedArray(object);