JS:函数参数默认值 [英] JS: functions arguments default values

查看:37
本文介绍了JS:函数参数默认值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在某些语言中,您可以为函数的参数设置默认值:

In some languages you can set default values for function's arguments:

function Foo(arg1 = 50, arg2 = 'default') {
    //...
}

你是如何用 JavaScript 实现的?

How do you do it in JavaScript?

推荐答案

在 JavaScript 中,任何未设置的值都被赋予 undefined 值.这意味着如果你想为一个函数设置默认值,你的第一行需要检查这些值是否没有定义:

In JavaScript, anything that isn't set is given the value undefined. This means that if you want to set default values for a function, your first line needs to be a check to see if those values aren't defined:

function Foo(arg1, arg2) {
    if (typeof(arg1) === "undefined") { arg1 = 50; }
    if (typeof(arg2) === "undefined") { arg2 = "default"; }
}

如果您大致知道这些值是什么,您可以走一些捷径:

You can take a bit of a short cut if you know roughly what those values will be:

function Foo(arg1, arg2) {
    arg1 = arg1 || 50;
    arg2 = arg2 || "default";
}

但是,如果这些参数为假,它们将被替换.这意味着如果 arg1 是空字符串,nullundefinedfalse0 它将被更改到50,所以如果你选择使用它要小心

However, if those arguments are falsy, they'll be replaced. This means that if arg1 is an empty string, null, undefined, false or 0 it'll be changed to 50, so be careful if you chose to use it

这篇关于JS:函数参数默认值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆