Javascript 设置变量以返回函数值或false
我不知道这个问题的标题该怎么说,但我直接跳了进去 使用Javascript 设置变量以返回函数值或false,javascript,Javascript,我不知道这个问题的标题该怎么说,但我直接跳了进去 使用?:运算符I设置JavaScript变量和if语句,如下所示: var test=callsAFunction?测试:假 如果我这样做,test会等于函数在这里返回的值吗?或者它是未定义的,因为它“技术上”还没有设置 我要做的是将一个变量设置为它返回的数据和通过函数运行的数据,或者将它设置为Boolean false,这样它将通过布尔检查作为错误进行处理。我认为这种方法是最好的,但我在决定如何进行时遇到了一些问题。下面是我的代码片段: var
?:运算符
I设置JavaScript变量和if语句,如下所示:
var test=callsAFunction?测试:假代码>
如果我这样做,test会等于函数在这里返回的值吗?或者它是未定义的,因为它“技术上”还没有设置
我要做的是将一个变量设置为它返回的数据和通过函数运行的数据,或者将它设置为Boolean false,这样它将通过布尔检查作为错误进行处理。我认为这种方法是最好的,但我在决定如何进行时遇到了一些问题。下面是我的代码片段:
var hash = self.getHashFromMasterRecords(d[0]);
if(hash === false){
done("Can't find master record hash", self.requestData, self);
}
显然,它需要将布尔值改为false才能作为错误传递。我想这样做,而不必为这个序列调用函数超过1次
那么,如果我执行var hash=self.getHashFromMasterRecords(d[0])?散列:剥皮代码>散列会返回值吗?还是未定义
提前感谢您,如果我需要发布更多信息,请告诉我。语法:
var a = (b) ? c : d;
如果b
的计算结果为真,则将a
设置为等于c
,如果b
的计算结果为假,则将d
设置为等于c
。如果我理解正确,您希望将变量设置为函数的返回值,如果该函数失败,请将其设置为某个默认值。为此,请使用|
:
var a = b() || 'error occurred!';
在上面的一行中,如果b()
的计算结果是错误的,a
将获得error executed的值代码>。如果b()
var a = (b) ? c : d;
如果b
的计算结果为真,则将a
设置为等于c
,如果b
的计算结果为假,则将d
设置为等于c
。如果我理解正确,您希望将变量设置为函数的返回值,如果该函数失败,请将其设置为某个默认值。为此,请使用|
:
var a = b() || 'error occurred!';
在上面的一行中,如果b()
的计算结果是错误的,a
将获得error executed的值代码>。如果b()
var a = (b) ? c : d;
如果b
的计算结果为真,则将a
设置为等于c
,如果b
的计算结果为假,则将d
设置为等于c
。如果我理解正确,您希望将变量设置为函数的返回值,如果该函数失败,请将其设置为某个默认值。为此,请使用|
:
var a = b() || 'error occurred!';
在上面的一行中,如果b()
的计算结果是错误的,a
将获得error executed的值代码>。如果b()
var a = (b) ? c : d;
如果b
的计算结果为真,则将a
设置为等于c
,如果b
的计算结果为假,则将d
设置为等于c
。如果我理解正确,您希望将变量设置为函数的返回值,如果该函数失败,请将其设置为某个默认值。为此,请使用|
:
var a = b() || 'error occurred!';
在上面的一行中,如果b()
的计算结果是错误的,a
将获得error executed的值代码>。如果b()。只要函数在返回时返回错误值,就可以使用or(|
)运算符:
var hash = self.getHashFromMasterRecords(d[0]) ?? false;
尽管如此,如果这是一个具体的例子,那么上面的代码几乎没有什么价值,因为仅仅存储函数的结果就已经有了一个错误的值。它将是未定义的。只要函数在返回时返回错误值,就可以使用or(|
)运算符:
var hash = self.getHashFromMasterRecords(d[0]) ?? false;
尽管如此,如果这是一个具体的例子,那么上面的代码几乎没有什么价值,因为仅仅存储函数的结果就已经有了一个错误的值。它将是未定义的。只要函数在返回时返回错误值,就可以使用or(|
)运算符:
var hash = self.getHashFromMasterRecords(d[0]) ?? false;
尽管如此,如果这是一个具体的例子,那么上面的代码几乎没有什么价值,因为仅仅存储函数的结果就已经有了一个错误的值。它将是未定义的。只要函数在返回时返回错误值,就可以使用or(|
)运算符:
var hash = self.getHashFromMasterRecords(d[0]) ?? false;
尽管如此,如果这是一个具体的例子,那么上面的代码几乎没有什么价值,因为仅仅存储函数的结果就已经有了错误的值。您尝试过吗?反正var hash=self.getHashFromMasterRecords(d[0])| | false
可能就是你要找的东西这就是我一直在想的,但我一时想不出来。谢谢你,先生。你试过了吗?反正var hash=self.getHashFromMasterRecords(d[0])| | false
可能就是你要找的东西这就是我一直在想的,但我一时想不出来。谢谢你,先生。你试过了吗?反正var hash=self.getHashFromMasterRecords(d[0])| | false
可能就是你要找的东西这就是我一直在想的,但我一时想不出来。谢谢你,先生。你试过了吗?反正var hash=self.getHashFromMasterRecords(d[0])| | false
可能就是你要找的东西这就是我一直在想的,但我一时想不出来。谢谢你,先生。谢谢你的澄清,我一直在想这些问题,但没有完全说清楚。谢谢你的澄清,我一直在想这些问题,但没有完全说清楚