问题:获取任意一串javascript代码并始终从中返回一个值并将其分配给变量。我需要构建一个javascript字符串,当被唤醒时,将一致地设置一个变量,无论javascript原始任意字符串的返回值是什么。例如,这个javascript字符串:
if(typeof(something) !== "undefined"){
hello()
}
这就是我现在尝试做的事情(是的,我知道上面的代码片段不会返回任何内容)
var result = (function(){
if(typeof(something) !== "undefined"){
hello()
}
}.call(this)
因此结果未定义。在上述情况下以及在所有其他(或大多数)其他情况下,我如何得到未定义的结果?
答案 0 :(得分:1)
如果您从未预料到 falsy 值(''
,0
,false
,undefined
或null
)功能,这将有效。
var result = function(){
if(typeof something !== "undefined"){
hello()
}
}.call(this) || 'default_value';