DEV Community

Juan Garcia
Juan Garcia

Posted on

What are Functions?

Explanation of the concept with an analogy:In JavaScript, a function is like a tool in a toolbox. we can have many functions in our program that perform different tasks depending on the input, in the case of a tool, you can imagine a drill and the drill bit which is the part of the drill that you can change depending on what material you are working on.
For example, if I were working on metal I would need to equip my drill with the appropriate drill bit to get the job done, So you can think of the material as the parameter to take into consideration when drilling which would be the function, the execution of an action.

Check out this example:

const drill = (material) => { 
  if (material === 'wood') {   
    console.log('Use point bit'); 
  } else if (material === 'metal') {
    console.log('Use cobalt drill bit');
  }
}
Enter fullscreen mode Exit fullscreen mode

Explanation of the syntax.
So first we start by declaring a const variable which is a means of storing a value belonging to a specific data type. By data type, I'm referring to what type of value are we working with. For now the main primitive types to consider are:

  • string = piece of text, you write a string inside of '', "" or ``. (The quotes are important because they tell our program that the text is a string and not a variable name).
  • number = a number (1, 2, 3, 4...etc)
  • boolean = true or false value, useful when checking conditions.
  • undefined = variable hasn't been assign a value.
  • null = 0

in this case, we are storing a function in our drill variable, and we know because of the following syntax that drill is a function () => {}. The parentheses are where we can specify if we want people to pass inputs to our function to get customized behavior, in this case, we set the value, in programming terms parameter to (material) which means we expect the user to input a material to know which drill bit to use. then we have an arrow which is a concise way to define a function and the curly braces where we will write the code we want our function to execute.

SurveyJS custom survey software

Simplify data collection in your JS app with a fully integrated form management platform. Includes support for custom question types, skip logic, integrated CCS editor, PDF export, real-time analytics & more. Integrates with any backend system, giving you full control over your data and no user limits.

Learn more

Top comments (0)

Image of Docusign

🛠️ Bring your solution into Docusign. Reach over 1.6M customers.

Docusign is now extensible. Overcome challenges with disconnected products and inaccessible data by bringing your solutions into Docusign and publishing to 1.6M customers in the App Center.

Learn more