从可能未定义的字段中赋值变量
assignment of variables from possibly undefined fields
我的问题是:处理这种情况最好(最清楚)的方法是什么?
<!-- language: lang-js -->
var result = (data[0][0] && data[0][0][0]) ? data[0][0][0] : null;
我要做的是给result分配数据[0][0][0]的内容但有时数据可能不可用如果我只是说:
<!-- language: lang-js -->
var result = data[0][0][0];
我可能会收到一个错误,因为数据[0][0]没有初始化。我的解决方案有效,但我相信有更好的方法……也许使用异常?由于
我坚信要写出清晰的代码;考虑以下重写:
var result = null;
if (data[0][0] && typeof data[0][0][0] != 'undefined') {
result = data[0][0][0];
}
这很容易理解,并且可以说比原始代码更正确。如果data[0][0][0]
总是一个对象或者null
,你当然可以这样写:
var result = null;
if (data[0][0] && data[0][0][0]) {
result = data[0][0][0];
}
没有真正的捷径;你必须先检查data[0][0]
,然后才能检查data[0][0][0]
。
相关文章:
- Javascript变量赋值|
- 如何在javascript中为全局变量赋值
- 未设置变量的赋值| jQuery的作用是什么
- 我可以在javascript中的回调函数中为变量赋值吗
- 如何在不赋值数组变量的情况下读取数组数据
- JavaScript 变量赋值的行为令人惊讶
- 为什么 Javascript 在变量赋值时将 null 转换为字符串
- JavaScript: 变量赋值 in for 语句 |在前面或里面
- 在 IF Javascript 中赋值变量
- 变量“this”上下文在重新赋值变量后未更新
- 在赋值变量中查找值
- 赋值变量新值以更改元素节点值
- 给对象赋值.变量动态形成
- 如何在函数内部使用赋值变量,在函数之外
- Javascript赋值变量if为nil
- 从可能未定义的字段中赋值变量
- 量角器在赋值变量时抛出错误
- 用$. getjson赋值变量
- jQuery使用click()赋值变量
- mongodb在赋值变量时打印结果