2

i want to set an optional parameter to a function using javascript. i have a function defined like below,

const function1 = () => {
    setValue(!open);
};

i call it like below in other function

const main_function = () => {
    function1();
}

now i want to pass an optional parameter to function1 to accept an optional parameter that sets it to true or false instead of toggling based on previous value.

how can i fix this. could someone help me with this thanks.

5
  • 3
    function1 = (optionalParam = false) => {} Commented Jul 17, 2020 at 13:25
  • 3
    setValue(!open); don't do this. Use functional update as your new state depends on the previous state. setValue(prevState => !prevState). Commented Jul 17, 2020 at 13:26
  • @VLAZ: so how do i call function1. Commented Jul 17, 2020 at 13:28
  • 3
    Does this answer your question? Set a default parameter value for a JavaScript function Commented Jul 17, 2020 at 13:28
  • function1() or function1(true) or function1(false) Commented Jul 17, 2020 at 13:28

5 Answers 5

6

I hope this helps someone, you can just set the value to null like code below:

 const function1 = ({arg1=null, arg2= false, arg3, ...}) => {
  
 }
Sign up to request clarification or add additional context in comments.

Comments

1

Pass a default value like so:

function multiply(a, b = 1) {
  return a * b
}

multiply(5, 2)          // 10
multiply(5)             // 5

Example taken from MDN docs

Comments

1

we can't make function arguments optional in javascript directly. However, we can assign them a default value, in case no arguments is passed through. this is how you do it-

const abc = (arg1, arg2= 'default value') => {
//arg1 is required. however if arg2 is not passed in any case, the default value //will be used in place.
}

Comments

0

You can check the if the argument is defined or not, like:

const function1 = (arg) => {
  setValue(arg === undefined ? !open : arg);
};

1 Comment

What is your use-case?
0

As far as I can understand you want something like this.

const function1 = (param) => {
    setValue(params ? true : false);
}

It will set true if param is available otherwise false. Correct me if I'm wrong.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.