1
剛剛在eslint docs中提到了可變參數函數。什麼是一個?什麼是可變參數函數?
剛剛在eslint docs中提到了可變參數函數。什麼是一個?什麼是可變參數函數?
變量函數是帶有可變數量參數的函數。 例如c中的printf,或者你可以在很多語言中定義你自己的這樣的函數。在java ...
被用來定義函數的變量參數。同樣在c中也使用了同樣的東西。
void simple_printf(const char* fmt...){
va_list args;
va_start(args, fmt);
while (*fmt != '\0') {
if (*fmt == 'd') {
int i = va_arg(args, int);
std::cout << i << '\n';
} else if (*fmt == 'c') {
// note automatic conversion to integral type
int c = va_arg(args, int);
std::cout << static_cast<char>(c) << '\n';
} else if (*fmt == 'f') {
double d = va_arg(args, double);
std::cout << d << '\n';
}
++fmt;
}
va_end(args);
}
這是在C可變參數函數。
在你問到的鏈接是說,在新的更新之前調用ESLint這樣的函數必須使用.apply(),但從新的更新,你可以簡單地忽略它,只需在傳遞的參數之前加上...
,鏈接。
前:
var args = [1, 2, 3, 4]; Math.max.apply(Math, args);
:
var args = [1, 2, 3, 4]; Math.max(...args);
現在ü不要需要。適用使用()