regexFind: /(\.\.\.[^,]+),\s*([^,)]+)/
regexReplace: $2, $1Move the rest parameter (...) to the end of the parameter list
- function greet(firstName: string, ...names: string[], lastName: string) {
+ function greet(firstName: string, lastName: string, ...names: string[]) {
return `Hello ${firstName} ${names.join(' ')} ${lastName}`
}Explanation: Rest parameters must be the last parameter in the function signature
- const greetArrow = (firstName: string, ...names: string[], lastName: string) => {
+ const greetArrow = (firstName: string, lastName: string, ...names: string[]) => {
return `Hello ${firstName} ${names.join(' ')} ${lastName}`
}Explanation: Arrow function rest parameters must be the last parameter
npx tsc ./docs/1014/index.ts --noEmit --prettydocs/1014/index.ts:2:35 - error TS1014: A rest parameter must be last in a parameter list.
2 function greet(firstName: string, ...names: string[], lastName: string) {
~~~
docs/1014/index.ts:7:40 - error TS1014: A rest parameter must be last in a parameter list.
7 const greetArrow = (firstName: string, ...names: string[], lastName: string) => {
~~~OR (without --pretty flag):
docs/1014/index.ts(2,35): error TS1014: A rest parameter must be last in a parameter list.
docs/1014/index.ts(7,40): error TS1014: A rest parameter must be last in a parameter list.