Functions Rules
Function call spacing, declaration style, naming conventions, and parameters
6 rules6 auto-isFixable
On This Page
function-call-spacing
auto-isFixable
No space between function name and opening parenthesis
Why: Standard JavaScript convention
Correct
javascript
myFunction(arg);console.log("message");Incorrect
javascript
myFunction (arg);console.log ("message");eslint.config.js
javascript
"code-style/function-call-spacing": "error"function-declaration-style
auto-isFixable
Convert function declarations to const arrow function expressions
Why: Auto-fix companion to ESLint's func-style rule
Correct
javascript
export const getToken = (): string | null => getCookie(tokenKey);Incorrect
javascript
export function getToken(): string | null { return getCookie(tokenKey);}eslint.config.js
javascript
"code-style/function-declaration-style": "error"function-naming-convention
auto-isFixable
Functions use camelCase, start with verb, end with Handler suffix
Why: Function names should describe actions clearly
Correct
javascript
function getUserDataHandler() {}function clickHandler() {}Incorrect
javascript
function handleClick() {}function getUserData() {}eslint.config.js
javascript
"code-style/function-naming-convention": "error"function-object-destructure
auto-isFixable
Non-component functions: use typed params, destructure in body
Why: Keeping function signatures clean and short improves readability
Correct
javascript
const createUserHandler = async (data: CreateUserParamsInterface) => { const { age, email, name } = data;};Incorrect
javascript
const createUserHandler = async ({ age, email, name }: CreateUserParamsInterface) => {};eslint.config.js
javascript
"code-style/function-object-destructure": "error"function-params-per-line
auto-isFixable
When multiline, each parameter on its own line
Why: Mixed formatting is confusing; one per line is scannable
Correct
javascript
function createUser( name, email, password,) {}Incorrect
javascript
function createUser(name, email, password, role) {}eslint.config.js
javascript
"code-style/function-params-per-line": "error"no-empty-lines-in-function-params
auto-isFixable
No empty lines between parameters
Why: Empty lines in parameter lists waste space
Correct
javascript
function createUser( name, email, role,) {}Incorrect
javascript
function createUser( name, email, role,) {}eslint.config.js
javascript
"code-style/no-empty-lines-in-function-params": "error"