Javascript 将变量分配给警报

标签 javascript alert

我想知道你能为 alert 分配一个变量吗?它的真正含义和作用是什么?例如,

var a = alert('test');  

我试过了,当我调用变量 a 时变量 a 仍然是 'undefined' 的页面加载后,警报就会弹出。难道我们不想让它成为一个匿名函数,里面有 alert,比如

var a = function(){ alert('test'); }

如果我们想触发某事的警报?为什么 javascript 允许您这样做?

最佳答案

var a = alert('test');

将此语句视为任何其他变量赋值。为了执行分配,首先评估右侧。在这种情况下,它是一个函数调用,所以函数被调用并获得它的返回值。在警报的情况下,返回值为 undefined。它不返回任何内容。

然后返回值被分配给a,所以a以值undefined结束。

作为该语句的副作用,会显示一条警告消息。这是调用 alert() 并获取其返回值的结果。

function foo(x) {
    return x * 2;
}

var a = foo(3);

此代码在结构上类似于 alert 调用,并且会导致 a 为 6。但是 alert() 不会返回值。它更像这样:

function bar(x) {
    return;
}

var a = bar(3);

现在 aundefined

关于Javascript 将变量分配给警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12380382/

相关文章:

javascript - 访问 jquery.ready() 之外的变量

javascript - ASP.NET UserControl javascript 未将 HTML 加载到其变量

Jquery 访问大量嵌套的输入

javascript - 有没有办法将数组的内容显示为有序列表但在警告框内

ios - swift : present a ViewController while alert is shown

javascript - 如何解码 Javascript/jQuery [object Object]

java - 如何在Seam中弹出/警报? ( java )

javascript - 通过 Javascript 关闭 iFrame

javascript - mocha karma 测试运行程序出错

javascript - 使用jquery计算获取数据的两个输入值