15个帮助你写出更简洁JavaScript的技巧

开发 前端
在本文中,我们将分享一些可以帮助你编写干净的 JavaScript 代码的技巧。无论你是初级职位还是高级职位,它都一定会帮助你提高实践水平。

在本文中,我们将分享一些可以帮助你编写干净的 JavaScript 代码的技巧。无论你是初级职位还是高级职位,它都一定会帮助你提高实践水平。

01、使用对象解构来获得更清晰的代码

// Bad
const firstName = user.firstName;
const lastName = user.lastName;


// Good
const { firstName, lastName } = user;

02、利用扩展语法进行对象和数组操作

// Bad
const newArray = [...oldArray];


// Good
const newArray = [...oldArray];

03、避免直接修改函数参数

// Bad
function updateArray(arr) {
    arr.push(4);
}


// Good
function updateArray(arr) {
    const newArr = [...arr, 4];
    return newArr;
}

04、使用模板文字进行字符串插值

// Bad
const fullName = firstName + ' ' + lastName;


// Good
const fullName = `${firstName} ${lastName}`;

05、尽可能使用 const 而不是 let

// Bad
let counter = 0;


// Good
const counter = 0;

06、在函数参数中使用数组和对象解构

// Bad
function getUserInfo(user) {
    const name = user.name;
    const age = user.age;
}


// Good
function getUserInfo({ name, age }) {
    // Code to use name and age
}

07、避免深度嵌套代码和过度缩进

// Bad
if (condition1) {
    if (condition2) {
        if (condition3) {
            // Code
        }
    }
}


// Good
if (condition1 && condition2 && condition3) {
    // Code
}

08、使用 Array.prototype.reduce() 进行复杂的数组操作

// Bad
let sum = 0;
for (let i = 0; i < numbers.length; i++) {
    sum += numbers[i];
}


// Good
const sum = numbers.reduce((acc, curr) => acc + curr, 0);

09、使用提前返回和保护子句避免不必要的嵌套

// Bad
function calculateTotal(price, quantity) {
    if (price && quantity) {
        // Code to calculate total
        return total;
    }
}


// Good
function calculateTotal(price, quantity) {
    if (!price || !quantity) {
        return;
    }


    // Code to calculate total
    return total;
}

10、用有意义的注释和 JSDoc 注释记录你的代码

// Bad
// Increment the counter by 1
counter++;


// Good
/**
 * Increments the counter by 1.
 */
counter++;

11、对私有数据使用闭包

const counter = (() => {
  let count = 0;
  return {
    increment: () => {
      count++;
    },
    getCount: () => {
      return count;
    },
  };
})();

12、实施记忆以优化性能

const memoizedFunction = (() => {
  const cache = {};
  return (arg) => {
    if (cache[arg]) {
      return cache[arg];
    }
    const result = expensiveOperation(arg);
    cache[arg] = result;
    return result;
  };
})();

13、避免改变对象和数组

// Bad
const person = {
  name: 'John',
  age: 30,
};
person.age = 31;


// Good
const person = {
  name: 'John',
  age: 30,
};
const updatedPerson = { ...person, age: 31 };

14、将复杂的功能分解成更小的、可重用的功能

// Bad
function processUserData(userData) {
  // complex logic...
}


// Good
function validateUserData(userData) {
  // validation logic...
}


function sanitizeUserData(userData) {
  // sanitization logic...
}


function processUserData(userData) {
  validateUserData(userData);
  sanitizeUserData(userData);
  // remaining logic...
}

15、遵循单一职责原则 (SRP)

// Bad
function calculateAreaAndPerimeter(radius) {
  const area = Math.PI * radius * radius;
  const perimeter = 2 * Math.PI * radius;
  console.log(`Area: ${area}, Perimeter: ${perimeter}`);
}


// Good
function cal
culateArea(radius) {
  return Math.PI * radius * radius;
}


function calculatePerimeter(radius) {
  return 2 * Math.PI * radius;
}


const area = calculateArea(5);
const perimeter = calculatePerimeter(5);
console.log(`Area: ${area}, Perimeter: ${perimeter}`);

总结

以上就是我今天与你分享的15个关于写出更好JS的小技巧,希望对你有用。

责任编辑:华轩 来源: 今日头条
相关推荐

2019-07-31 10:24:16

JavaScript浏览器口袋妖怪

2024-03-28 14:29:46

JavaScript编程

2022-08-28 19:03:18

JavaScript编程语言开发

2014-03-17 09:57:54

2020-08-06 16:34:48

Python开发工具

2022-05-10 10:28:21

JavaScript代码

2023-11-26 17:54:07

JavaScript开发

2022-12-22 14:44:06

JavaScript技巧

2022-12-25 16:03:31

JavaScript技巧

2022-09-27 15:34:05

VSCode插件开发

2023-08-27 16:19:09

JavaScript编程语言

2024-01-30 08:54:05

JavaScript技巧代码

2020-10-04 13:15:37

代码技术开发

2015-01-14 10:26:30

JavaScript编程技巧

2022-09-05 14:17:48

Javascript技巧

2019-07-24 15:29:55

JavaScript开发 技巧

2020-11-11 08:22:40

前端开发JavaScript

2024-01-15 17:26:26

JavaScriptWeb开发

2024-01-26 08:37:49

动画库JavaScriptSlack

2023-09-12 14:38:08

开发JavaScript
点赞
收藏

51CTO技术栈公众号