请解释这行JavaScript代码

时间:2018-08-13 09:26:46

标签: javascript

jBox.prototype.position = function (options)
{
  // this line
  !options && (options = {});

}

在常规编程中,布尔语句用于if else语句。 !options &&(options = {});是什么?还要翻译吗?

options是json或数组。 !options是什么意思?

options = {}正在为变量options分配一个空的json,它如何返回布尔值以与&&一起使用。

2 个答案:

答案 0 :(得分:2)

代码:

!options && (options = {});

等效于:

if(!options) { 
    options = {}; 
}

答案 1 :(得分:0)

这意味着如果options是一个伪造的值(空),则使用一个空的对象常量对其进行初始化。