target | Object | The object to extend |
---|---|---|
prop1 | Object | The object that will be merged into the first. |
propN | Object | (optional) More objects to merge into the first |
Extend one object with one or more others, returning the original, modified, object. This is a great utility for simple inheritance.
Merge settings and options, modifying settings
var settings = { validate: false, limit: 5, name: "foo" }; var options = { validate: true, name: "bar" }; jQuery.extend(settings, options);
settings == { validate: true, limit: 5, name: "bar" }
Merge defaults and options, without modifying the defaults
var defaults = { validate: false, limit: 5, name: "foo" }; var options = { validate: true, name: "bar" }; var settings = jQuery.extend({}, defaults, options);
settings == { validate: true, limit: 5, name: "bar" }
obj | Object | The object, or array, to iterate over. |
---|---|---|
fn | Function | The function that will be executed on every object. |
A generic iterator function, which can be used to seemlessly iterate over both objects and arrays. This function is not the same as $().each() - which is used to iterate, exclusively, over a jQuery object. This function can be used to iterate over anything.
The callback has two arguments:the key (objects) or index (arrays) as first the first, and the value as the second.
This is an example of iterating over the items in an array, accessing both the current item and its index.
$.each( [0,1,2], function(i, n){ alert( "Item #" + i + ": " + n ); });
This is an example of iterating over the properties in an Object, accessing both the current item and its key.
$.each( { name: "John", lang: "JS" }, function(i, n){ alert( "Name: " + i + ", Value: " + n ); });
str | String | The string to trim. |
---|
Remove the whitespace from the beginning and end of a string.
$.trim(" hello, how are you? ");
"hello, how are you?"
first | Array | The first array to merge. |
---|---|---|
second | Array | The second array to merge. |
Merge two arrays together, removing all duplicates.
The new array is: All the results from the first array, followed by the unique results from the second array.
Merges two arrays, removing the duplicate 2
$.merge( [0,1,2], [2,3,4] )
[0,1,2,3,4]
Merges two arrays, removing the duplicates 3 and 2
$.merge( [3,2,1], [4,3,2] )
[3,2,1,4]
array | Array | The Array to find items in. |
---|---|---|
fn | Function | The function to process each item against. |
inv | Boolean | Invert the selection - select the opposite of the function. |
Filter items out of an array, by using a filter function.
The specified function will be passed two arguments: The current array item and the index of the item in the array. The function must return 'true' to keep the item in the array, false to remove it.
$.grep( [0,1,2], function(i){ return i > 0; });
[1, 2]
array | Array | The Array to translate. |
---|---|---|
fn | Function | The function to process each item against. |
Translate all items in an array to another array of items.
The translation function that is provided to this method is called for each item in the array and is passed one argument: The item to be translated.
The function can then return the translated value, 'null' (to remove the item), or an array of values - which will be flattened into the full array.
Maps the original array to a new one and adds 4 to each value.
$.map( [0,1,2], function(i){ return i + 4; });
[4, 5, 6]
Maps the original array to a new one and adds 1 to each value if it is bigger then zero, otherwise it's removed-
$.map( [0,1,2], function(i){ return i > 0 ? i + 1 : null; });
[2, 3]
Maps the original array to a new one, each element is added with it's original value and the value plus one.
$.map( [0,1,2], function(i){ return [ i, i + 1 ]; });
[0, 1, 1, 2, 2, 3]
Contains flags for the useragent, read from navigator.userAgent. Available flags are: safari, opera, msie, mozilla
This property is available before the DOM is ready, therefore you can use it to add ready events only for certain browsers.
There are situations where object detections is not reliable enough, in that cases it makes sense to use browser detection. Simply try to avoid both!
A combination of browser and object detection yields quite reliable results.
Returns true if the current useragent is some version of microsoft's internet explorer
$.browser.msie
Alerts "this is safari!" only for safari browsers
if($.browser.safari) { $( function() { alert("this is safari!"); } ); }