Funzioni

Regole per la definizione e uso delle funzioni in progetti PANDEV.

🎯 Function Declarations vs Expressions

Function Declarations

❌ Evitare:

// bad - function expression when declaration is better
const processUser = function(user) {
  return user.name.toUpperCase()
}

// bad - anonymous function expression
const users = data.map(function(item) {
  return item.user
})

βœ… Preferire:

// good - function declaration for top-level functions
function processUser(user) {
  return user.name.toUpperCase()
}

// good - arrow function for short callbacks
const users = data.map(item => item.user)

// good - named function expressions when needed
const processUser = function processUser(user) {
  // The name helps with debugging
  return user.name.toUpperCase()
}

Arrow Functions

❌ Evitare:

βœ… Preferire:

πŸ”§ Function Parameters

Parameter Defaults

❌ Evitare:

βœ… Preferire:

Destructuring Parameters

❌ Evitare:

βœ… Preferire:

Rest Parameters

❌ Evitare:

βœ… Preferire:

πŸš€ Async Functions

Async/Await

❌ Evitare:

βœ… Preferire:

Error Handling in Async Functions

❌ Evitare:

βœ… Preferire:

🎨 Higher-Order Functions

Function Composition

❌ Evitare:

βœ… Preferire:

Currying and Partial Application

❌ Evitare:

βœ… Preferire:

πŸ”„ Pure Functions

Function Purity

❌ Evitare:

βœ… Preferire:

πŸ“Š Function Performance

Memoization

❌ Evitare:

βœ… Preferire:

Queste regole per le funzioni garantiscono codice JavaScript piΓΉ leggibile, performante e maintainable nei progetti PANDEV.

Last updated

Was this helpful?