Underscore.js is a JavaScript library that makes operations on arrays, string, objects much easier and handy.
The _.identity() function is used to return the exact same replica of the value given to it as the argument. This function looks useless, but is used throughout Underscore as a default iteratee.
Note: It is very necessary to link the underscore CDN before going and using underscore functions in the browser. When linking the underscore.js CDN The “_” is attached to the browser as global variable.
Syntax:
_.identity( object );
Parameters: This function accepts single parameter object.
Return Value: This function returns the value of the given parameter.
Example 1:
<!DOCTYPE html> <html> <head> <script src=
"https: //cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
</script>
</head> <body> <script>
// Creating a string
let str = new String("GeeksforGeeks")
// _.identity function of underscore.js
let copystr = _.identity(str)
console.log(`original string is ${str}`)
console.log(`Identity string is ${copystr}`)
</script>
</body> </html> |
Output:
Example 2:
<!DOCTYPE html> <html> <head> <script src=
"https: //cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
</script>
</head> <body> <script>
// Creating a object
let obj = {
"a": 1,
"b": 2,
"c": 3
}
// _.identity function of underscore.js
let copyobj = _.identity(obj)
console.log(`original object is ${obj}`)
console.log(`Identity object is ${copyobj}`)
// This will return true
console.log(obj === copyobj)
// Both objects are exactly same
console.log("from obj : ", obj.a,
" from copyobj: ", copyobj.a);
// Made Changes in object
obj.a = 12
// Change in one object
// reflects in another
console.log("change in one object"
+ " reflects in another =>")
console.log("from obj : ", obj.a,
" from copyobj: ", copyobj.a);
</script>
</body> </html> |
Output: