如何制作更短且可读的比较/逻辑行来分配默认值?在jQuery/JavaScript中
How to make shorter and readable comparison/logical lines to assign default values? in jQuery/JavaScript?
考虑一下正则函数内部底部的代码,该代码检查是否提供了一些参数,并为名为message的变量分配默认值。如果参数是truthy或空字符串,它将被简单地转换为字符串并存储在消息变量中,否则参数类型将存储在消息中。我知道可以缩短if-else语句来为变量分配默认值,比如:
var message = arguments[0] || jQuery.type(arguments[0]);
如果只有自变量[0]是真的,则将存储在消息中。但是,如何在不必使用长if-else语句的情况下,为一个错误值的空字符串破例呢?
if(arguments[0] || arguments[0] === '')
var message = arguments[0].toString();
else
var message = jQuery.type(arguments[0]);
var message = ((arguments[0] || arguments[0] === '') ? arguments[0].toString() : jQuery.type(arguments[0]));
听起来像是在寻找一个简写if/else。如果是这样的话,你可以在这里找到你的问题的答案。基本上你需要的是一个三元运算符。
摘录如下:
var x = y !== undefined ? y : 1;
相关文章:
- 在循环中分配json值时,值被覆盖
- 我的shareService在angular 2中发送值工作正常,但当我渲染我的另一个组件时,会获得默认值
- jquerydatetimepicker日期和时间应在框默认值中,而无需单击框
- 如果值为空,如何设置输入的默认值?jQuery
- 骨干模型默认值-todos.js示例中不必要的代码
- jquery日期选择器年份范围默认值
- Html5输入属性的默认值,如最小值、最大值、大小等
- 根据两个下拉列表的默认值禁用按钮
- 如何创建具有默认值的JavaScript对象字段?(AngularJS模型相关)
- Angularjs-设置不带ng选项的select的默认值
- jQuery Datepicker从日期开始设置默认值
- 如何设置浏览器打开的文件对话框的文件名(一些默认值)
- 当数组在angularjs中没有可比较的值时,如何分配默认值
- 如何通过javascript为输入类型日期分配默认值
- 如果存在值,则使用值,否则使用 or 运算符分配默认值
- 使用 angularjs 将默认值分配给多选下拉列表
- 如何制作更短且可读的比较/逻辑行来分配默认值?在jQuery/JavaScript中
- jquery中.data()分配的默认值
- 如何在密码的表单输入字段中分配默认值
- 如何禁用文本框并为其分配默认值