2017-05-31 46 views
-2
​​

我已經看到這個片段在線JavaScript的sudying當然,我不明白什麼是逗號後(數字* 9)的參數的含義。不幸的是,我無法在網上找到答案。提前致謝。警報方法的第二個參數是什麼意思?

+0

['alert'](https://developer.mozilla.org/en -US/docs/Web/API/Window/alert)只需要一個參數。另一方面,['console.log'](https://developer.mozilla.org/en-US/docs/Web/API/Console/log)將允許您一次打印多件事情,通常與一個空間,通過提供多個參數。至於第二個意思是什麼,它的意思是「乘以'number'中的值9」 –

回答

1

docs完全沒有談到警報方法的第二個參數。

語法: window.alert(消息);

message是要在警報 對話框顯示,,或者文本,即轉換成字符串 並顯示對象的可選的字符串。

當您將第二個參數傳遞給在其簽名中只有一個的函數時,第二個參數將被忽略。但是它可以通過函數內部的arguments對象訪問。

例子:

var functionWithOnlyOneParameter = function (firstParameter) { 
 
    console.log(firstParameter); 
 
    console.log(arguments[0]); // same as 'firstParameter' 
 
    console.log(arguments[1]); 
 
} 
 

 
functionWithOnlyOneParameter('first String', 'second String');

+0

你應該用函數調用替換最後一個'console.log' ... ^^ – Badacadabra

+0

@Badacadabra LOL!回答編輯!謝謝! :) –

1

window.alert()只接受一個參數。傳遞第二個參數沒有意義。它被簡單地忽略。

我建議使用一個很好的文檔,如MDN快速找到自己的問題的答案。

PS:如果你環繞在括號內的參數,你會得到不同的結果,你現在利用comma operator來評價兩個表達式,並通過唯一的第二個表達式的結果值作爲一個參數:

let number = 1; 
 

 
alert((number + " times 9 = ", number * 9)); // alert(number * 9);

0

在javascript中,你可以提供儘可能多的論據,你喜歡的功能,但他們根本不理。

0

alert沒有第二個參數。我認爲,逗號是命中註定的另一優點,因爲在

alert(number + " times 9 = " + number * 9); 
0

至於其他的答案已經指出的那樣,標準alert()函數只接受一個參數。

我懷疑,如果您通過在線課程中的介紹性資料或腳註進行搜索,您會發現教師會用自己的默認警報函數覆蓋默認警報函數,該函數可以接受任意數量的參數,用於執行字符串並置,類似於console.log()的通用實現。

0

一個不能說。在大多數情況下(包括窗口的警報點)。警報)ID什麼也不做,但我們可以做

let alert=(...args)=>window.alert(args.join(";")); 

現在它使用多個PARAMS一個意思:

alert("test","test"); 
+0

@le_m我承認讓,而且我總是......在我的所有答案中都是錯誤的(:/) –

+0

它有助於像我一樣偏執,並在發佈之前在控制檯中運行所有代碼:/ –

+0

@ le_m im在手機上。我會如果即時通訊在桌面上:/ –

相關問題