js怎麼做預設函式形參 js函式引數設定預設值

2021-10-20 21:16:38 字數 1072 閱讀 8557

題目形貌

之前寫js函式,都沒設定過預設值,由於是做後端php身世,所以在給引數設定預設值的時刻,直接用了php的語法,firefox是好用的,在蘋果機上的某些版本的chrome也是好用的,然則實在我的寫法是毛病的,某些情況下,js就報錯了。

毛病的寫法

function get_data(from=0,limit=0){

console.log(from);

console.log(limit);

get_data();

get_data(5);

get_data(5,10);

這個寫法firefox沒報錯,運轉一般,然則chrome不認

準確的寫法

js函式中有個貯存引數的陣列arguments ,一切函式取得的引數會被編譯器挨個儲存到這個陣列中。

function get_data(){

var from = arguments[0] ? arguments[0] : 0;

var limit = arguments[1] ? arguments[1] : 0;

console.log(from);

console.log(limit);

get_data();

get_data(5);

get_data(5,10);

簡化後的寫法

文章寫好以後發到交換群裡了,有乙個特地做前端的朋儕通知了我更簡樸的寫法

function get_data(){

var from = arguments[0] || 0;

var limit = arguments[1] || 0;

console.log(from);

console.log(limit);

get_data();

get_data(5);

get_data(5,10);

運轉效果跟第二種一樣,有新收成很愉快,真是朋儕多了路好走。

總結看來很多相識js那些隱蔽的引數

做前端的時刻要斟酌瀏覽器相容題目,真的好麻煩,弄好了這個瀏覽器,其他瀏覽器能夠又不可,不能有一絲懶惰,

頭疼,疼疼疼….

js怎麼做預設函式形參 js函式引數設定預設值

題目形貌 之前寫js函式,都沒設定過預設值,由於是做後端php身世,所以在給引數設定預設值的時刻,直接用了php的語法,firefox是好用的,在蘋果機上的某些版本的chrome也是好用的,然則實在我的寫法是毛病的,某些情況下,js就報錯了。毛病的寫法 function get data from ...

js函式傳參

要理解函式的傳參機制,首先,我們首先就要弄清楚的就是js資料型別的儲存機制和變數複製的方式,上文中 js中為什麼不能為值型別的變數動態新增屬性呢?這裡已經討論過了,這裡不再累贅,接著我們來討論下,js的變數複製 請看以下 在看 從上面 的輸出結果,我們可以看出,對於基本型別來說,其複製的是被複製變數...

函式過載 const形參 預設實參

過載 同乙個作用域內的幾個函式名字相同但是形參列表不同,我們稱之為過載 overload 不能定義兩個函式除了返回型別外其他所用的要素都相同。過載和const形參 預設實參 呼叫含有預設實參的函式時,可以包含該實參,也可以省略該實參。注意,一旦某個形參被賦予了預設值,它後面的所有形參都必須有預設值。...