{"id":227,"date":"2021-02-11T07:07:35","date_gmt":"2021-02-11T07:07:35","guid":{"rendered":"http:\/\/santosh-shah.com\/?p=227"},"modified":"2021-02-11T07:07:35","modified_gmt":"2021-02-11T07:07:35","slug":"multiple-bracket-function-in-javascript","status":"publish","type":"post","link":"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/","title":{"rendered":"Multiple bracket function in JavaScript"},"content":{"rendered":"\n<p>Multiple bracket function in JavaScript are tricky to understand. The bracket generally resemble a function without bracket it would be a variable. So, if you want multiple bracket function you would need to return multiple function in it. For eg: look at the code below.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>function addThis(x){\n   return function(y){\n       return x+y;\n   }\n}\naddThis(3)(4) \/\/output : 7<\/code><\/pre>\n\n\n\n<p>Now what if we need to perform same operation with the number of bracket which is not fixed ?<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>addThis(3)(4) \/\/ 7\naddThis(3)(4)(5) \/\/12\naddThis(3)(4)(5)(6) \/\/18\naddThis(1)(1)(1)(1)(1) \/\/5<\/code><\/pre>\n\n\n\n<p>With single bracket function we could just have rest parameter.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code> function add(...args) {\n     let sum = 0;\n     for(let i=0; i&lt;args.length; i++) {\n         sum  = sum + args&#91;i];\n     }\n     return sum;\n }\nconsole.log(add(1,2,3,4,5))<\/code><\/pre>\n\n\n\n<p>But with multiple bracket function we might need to use like this. You have to pass empty () at the end when you want to terminate the call and get the final value.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>const sum= x => y => (y !== undefined) ? sum(x + y) : x;\nsum(10)(30)(45)();<\/code><\/pre>\n\n\n\n<p><a href=\"https:\/\/stackoverflow.com\/questions\/5832891\/variadic-curried-sum-function\" target=\"_blank\" rel=\"noreferrer noopener\">Credit Link<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Multiple bracket function in JavaScript are tricky to understand. The bracket generally resemble a function without bracket it would be a variable. So, if you want multiple bracket function you would need to return multiple function in it. For eg: look at the code below. Now what if we need to perform same operation with [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-227","post","type-post","status-publish","format-standard","hentry","category-javascript"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Multiple bracket function in JavaScript - Santosh Kumar Shah<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Multiple bracket function in JavaScript - Santosh Kumar Shah\" \/>\n<meta property=\"og:description\" content=\"Multiple bracket function in JavaScript are tricky to understand. The bracket generally resemble a function without bracket it would be a variable. So, if you want multiple bracket function you would need to return multiple function in it. For eg: look at the code below. Now what if we need to perform same operation with [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/\" \/>\n<meta property=\"og:site_name\" content=\"Santosh Kumar Shah\" \/>\n<meta property=\"article:published_time\" content=\"2021-02-11T07:07:35+00:00\" \/>\n<meta name=\"author\" content=\"Santosh Kumar Shah\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Santosh Kumar Shah\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/\",\"url\":\"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/\",\"name\":\"Multiple bracket function in JavaScript - Santosh Kumar Shah\",\"isPartOf\":{\"@id\":\"https:\/\/santosh-shah.com\/blog\/#website\"},\"datePublished\":\"2021-02-11T07:07:35+00:00\",\"author\":{\"@id\":\"https:\/\/santosh-shah.com\/blog\/#\/schema\/person\/b17cb45bdd5f518e74a08ad2c6c4b39f\"},\"breadcrumb\":{\"@id\":\"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/santosh-shah.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Multiple bracket function in JavaScript\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/santosh-shah.com\/blog\/#website\",\"url\":\"https:\/\/santosh-shah.com\/blog\/\",\"name\":\"Santosh Kumar Shah\",\"description\":\"JavaScript Developer\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/santosh-shah.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/santosh-shah.com\/blog\/#\/schema\/person\/b17cb45bdd5f518e74a08ad2c6c4b39f\",\"name\":\"Santosh Kumar Shah\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/santosh-shah.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/cf46c57219d897547f3204b6b302169b3302b17507ccc902946b622a78d0b98b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/cf46c57219d897547f3204b6b302169b3302b17507ccc902946b622a78d0b98b?s=96&d=mm&r=g\",\"caption\":\"Santosh Kumar Shah\"},\"description\":\"I am JavaScript developer.\",\"sameAs\":[\"https:\/\/santosh-shah.com\/blog\"],\"url\":\"https:\/\/santosh-shah.com\/blog\/author\/sks7yu\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Multiple bracket function in JavaScript - Santosh Kumar Shah","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/","og_locale":"en_US","og_type":"article","og_title":"Multiple bracket function in JavaScript - Santosh Kumar Shah","og_description":"Multiple bracket function in JavaScript are tricky to understand. The bracket generally resemble a function without bracket it would be a variable. So, if you want multiple bracket function you would need to return multiple function in it. For eg: look at the code below. Now what if we need to perform same operation with [&hellip;]","og_url":"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/","og_site_name":"Santosh Kumar Shah","article_published_time":"2021-02-11T07:07:35+00:00","author":"Santosh Kumar Shah","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Santosh Kumar Shah","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/","url":"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/","name":"Multiple bracket function in JavaScript - Santosh Kumar Shah","isPartOf":{"@id":"https:\/\/santosh-shah.com\/blog\/#website"},"datePublished":"2021-02-11T07:07:35+00:00","author":{"@id":"https:\/\/santosh-shah.com\/blog\/#\/schema\/person\/b17cb45bdd5f518e74a08ad2c6c4b39f"},"breadcrumb":{"@id":"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/santosh-shah.com\/blog\/multiple-bracket-function-in-javascript\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/santosh-shah.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Multiple bracket function in JavaScript"}]},{"@type":"WebSite","@id":"https:\/\/santosh-shah.com\/blog\/#website","url":"https:\/\/santosh-shah.com\/blog\/","name":"Santosh Kumar Shah","description":"JavaScript Developer","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/santosh-shah.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/santosh-shah.com\/blog\/#\/schema\/person\/b17cb45bdd5f518e74a08ad2c6c4b39f","name":"Santosh Kumar Shah","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/santosh-shah.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/cf46c57219d897547f3204b6b302169b3302b17507ccc902946b622a78d0b98b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/cf46c57219d897547f3204b6b302169b3302b17507ccc902946b622a78d0b98b?s=96&d=mm&r=g","caption":"Santosh Kumar Shah"},"description":"I am JavaScript developer.","sameAs":["https:\/\/santosh-shah.com\/blog"],"url":"https:\/\/santosh-shah.com\/blog\/author\/sks7yu\/"}]}},"_links":{"self":[{"href":"https:\/\/santosh-shah.com\/blog\/wp-json\/wp\/v2\/posts\/227","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/santosh-shah.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/santosh-shah.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/santosh-shah.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/santosh-shah.com\/blog\/wp-json\/wp\/v2\/comments?post=227"}],"version-history":[{"count":0,"href":"https:\/\/santosh-shah.com\/blog\/wp-json\/wp\/v2\/posts\/227\/revisions"}],"wp:attachment":[{"href":"https:\/\/santosh-shah.com\/blog\/wp-json\/wp\/v2\/media?parent=227"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/santosh-shah.com\/blog\/wp-json\/wp\/v2\/categories?post=227"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/santosh-shah.com\/blog\/wp-json\/wp\/v2\/tags?post=227"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}