var x = confirm("Ok or Cancel?");
alert(x);
在上面的例子中,點擊了確定之後或取消返回值將被傳遞到的「x」。接收到該值後,接下來將執行alert(x);
我的問題是確認如何將值傳遞給'x'?顯然,確認框將等待用戶在執行警報(x)之前單擊「確定」或「取消」。
var x = confirm("Ok or Cancel?");
alert(x);
在上面的例子中,點擊了確定之後或取消返回值將被傳遞到的「x」。接收到該值後,接下來將執行alert(x);
我的問題是確認如何將值傳遞給'x'?顯然,確認框將等待用戶在執行警報(x)之前單擊「確定」或「取消」。
你的假設是正確的,調用confirm()
是一個阻塞操作。
截至mdn說:
對話框是模態窗口 - 他們阻止用戶訪問該程序界面的其餘部分,直到對話框關閉。出於這個原因,你不應該過度使用任何創建對話框(或模態窗口)的函數。無論如何,避免使用對話框進行確認有很好的理由。
confirm
是一個接受參數並返回布爾值的函數。
所以一個簡單的函數工作方式類似:
function trueIfMessage(message)
{
return (message != '' && message != null);
}
這是一個函數,參數,返回一個布爾值。
confirm
增加了更多的功能,因爲它向用戶顯示一個窗口並允許用戶做出選擇。這種副作用會阻塞主線程,直到用戶關閉窗口。
'confirm'是一個阻塞函數,它會停止代碼執行,直到您響應提示。然後它返回一個值,與每個返回值的函數一樣,然後可以將其存儲到一個變量中。 – Amadan 2014-09-29 08:14:56
'confirm' **暫停**整個線程,並在您單擊ok或cancel後返回一個值。 – 2014-09-29 08:16:17