在js中每個函數類都有一個Arguments對象實例arguments,。首先他不是一個數組,可以說算一個偽數組,但是用數組的索引形式也能獲取到他的值,如
let len = arguments.length;表示函數參數的個數
arguments[0]表示第一個參數
在函數中使用它的好處就是這個函數在多處調用且參數有不是必須傳遞的,這樣可以利用arguments來處理,解決了不需要的參數也要傳遞的問題
在實際應用中分裝的函數中使用了一下,有不對的和需要改進的地方,還請大家多多指教,一起學習
export function axiosPost() {
let len = arguments.length;
if (len < 4) {
alert('傳參有誤,請檢查');
return;
}
let that = arguments[0];
let url = arguments[1];
let params = arguments[2];
let callback = arguments[3];
let message;
let config;
if (len === 4) {
message = '';
config = {};
}
else if (len === 5) {
config = arguments[4];
message = '';
}
else {
config = arguments[4];
message = arguments[5];
}
axios.post(url, params, config)
.then(function(respons) {
processResponseData(that,respons,message,callback);
})
.catch(function (error) {
that.$message({
message: '數據響應出現問題',
type: 'error'
});
});
}
這是一個post 請求的封裝,是在vue項目中使用的,用的是axios來代替ajax做交互的,因為前四個參數為必須傳的,而后兩個參數是不必須的是做擴展使用
