是嗯哼小仙女呀 2022-08-10 15:21 采纳率: 0%
浏览 21

js return 后的括号两个进行与比较是什么意思

请问return 后的括号两个进行与比较是什么意思

function renderItem(params, api) {
  var rectShape ={
        x:1,
        y:2,
  }
  return (
    rectShape && {
      type: 'rect',
      transition: ['shape'],
      shape: rectShape,
    }
  );
}
  • 写回答

2条回答 默认 最新

  • 谷雨睡不醒 2022-08-10 15:41
    关注

    这是js里一种比较常见的写法,因为js的逻辑运算其实是有返回值的。

    rectShape && {
          type: 'rect',
          transition: ['shape'],
          shape: rectShape,
        }
    
    

    这里的结果就是如果rectShape 不存在就返回false,如果rectShape 存在就返回后面的那个对象。

    一般用来做判断空值简便写法,比如后面那个对象包含对rectShape的引用,那么如果要求rectShape不能为空可以这么写。
    但是这段代码里面rectShape肯定不是空不知道为什么要这么写

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 8月10日