相关疑难解决方法(0)

这个符号在JavaScript中意味着什么?

这是什么?

这是一系列关于JavaScript中语法的问题.这也是社区Wiki,因此邀请每个人参与维护此列表.

为什么是这样?

Stack Overflow不允许搜索特定字符.因此,在搜索运算符和其他语法标记时,很难找到许多关于运算符和其他语法标记的问题.这也使得关闭重复更加困难.以下列表是为了解决此问题.

主要思想是在Stack Overflow上链接现有问题,因此我们更容易引用它们,而不是复制ECMAScript规范中的内容.

此外,这是PHP符号引用的公然副本.我们需要一个JS.


请帮忙.编辑并添加指向其他运算符/语法参考的链接,或者如果您无法在特定语法上找到好的问题/答案,请添加此问题的答案并将其链接

javascript

86
推荐指数
1
解决办法
14万
查看次数

JavaScript中的可选链接

我最近在Swift编程了很多.今天,当我遇到问题时,我在JavaScipt做了一些工作:

是否有类似于JavaScript中的可选链接?一种防止undefined is not an object没有任何变量的方法?

例:

function test(){
   if(new Date() % 2){
      return {value: function(){/*code*/}};
   }
} 

test().value();
Run Code Online (Sandbox Code Playgroud)

将失败一半的时间因为有时会test返回undefined.

我能想到的唯一解决方案是功能:

function oc(object, key){
   if(object){
      return object[key]();
   }
}

oc(test(), 'value');
Run Code Online (Sandbox Code Playgroud)

我希望能够做到这样的事情:

test()?.value()
Run Code Online (Sandbox Code Playgroud)

问号后面的部分仅在test返回对象时执行.

但这不是很重要.还有更好的东西吗?运营商的神奇组合?

编辑我知道我可以重写test以返回一些东西.但我想知道是否有类似可选链接的东西.我对上面例子的特定解决方案不感兴趣.如果无法控制返回undefined的函数,我也可以使用的东西.

javascript

11
推荐指数
3
解决办法
2591
查看次数

标签 统计

javascript ×2