Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I like to use typescript interfaces for function properties, But I like to use default properties as well. How can I use both?

export interface test_interface{
   owner: string, 
   length?: number, 
   max_players?: number,
}
const test_function = (test_props: test_interface) => {
    const x = test_props.length; //could be undefined and I want a default value
}
question from:https://stackoverflow.com/questions/66068354/default-values-for-interface-for-function-properties-in-typescript

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
816 views
Welcome To Ask or Share your Answers For Others

1 Answer

You can accomplish this with destructuring in the function declaration.

export interface test_interface{
   owner: string, 
   length?: number, 
   max_players?: number,
}
const test_function = ({owner, length = 5, max_players = 4}: test_interface) => {
    const x = test_props.length; //length is 5 or whatever was passed in on the function call
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...