Open In App

Underscore.js _.identity() Function

Last Updated : 24 Dec, 2021
Comments
Improve
Suggest changes
Like Article
Like
Report

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:

JavaScript
<!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:

JavaScript
<!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:


Next Article

Similar Reads