The d3.ascending() function in D3.js is a built-in comparator function for the natural order which accepts two parameters and computes their natural order.
Syntax:
d3.ascending(x, y)
Parameters: This function accepts two parameters x, y whose natural order needs to be computed.
Return Value: The function has the following return values:
- Returns -1 if the two values are in ascending order.
- Returns 1 if the two values are in descending order.
- Returns 0 if the two values are equal
- Returns NaN if there are no comparable values, i.e. only one or no parameters are passed to the function.
Below programs illustrate the d3.ascending() function in D3.js.
Example 1:
<!DOCTYPE html> <html>   <head>     <title>D3.js | d3.ascending() function</title>   </head>   <body>     <script>         // If the two values are in         // ascending order         document.write(d3.ascending(33, 64) + "<br>"); // -1           // If the two values are in         // descending order         document.write(d3.ascending(42, 24) + "<br>"); // 1           // If the two values are equal         document.write(d3.ascending(43, 43) + "<br>"); // 0     </script> </body>   </html> |
Output:
-1 1 0
Example 2:
<!DOCTYPE html> <html>   <head>     <title>D3.js d3.ascending() function</title>   </head>   <body>     <script>         // If no values are passed         document.write(d3.ascending() + "<br>"); // NaN           // If only one value is passed         document.write(d3.ascending(42) + "<br>"); // NaN           // If the two values are equal         document.write(d3.ascending("x", "x") + "<br>"); // 0           // If the two values are in         // ascending order         document.write(d3.ascending("x", "y") + "<br>"); // -1           // If the two values are in         // descending order         document.write(d3.ascending("y", "x") + "<br>"); // 1     </script> </body>   </html> |
Output:
NaN NaN 0 -1 1
