更优雅的使用JavaScript

这是一篇提升 JavaScript 编码水平的合集


1. 使用constandlet代替var

使用const和let有助于避免变量提升和范围问题。const用于常量,而let用于可以重新分配的变量。

// 之前
var name = "张三" ; 
var age = 25 ; 

// 优化后
const name = "张三" ; 
let age = 25 ;

2.使用箭头函数

箭头函数提供了更短的语法并在词汇上绑定this值。

// 之前
function  add ( a, b ) { 
    return a + b; 
} 

// 优化后
const  add = ( a, b ) => a + b;

3. 使用模板字符串

模板文字允许您轻松地将变量和表达式插入到字符串中。

// 之前
let name = "张三" ; 
let message = "Hello, " + name + "!" ; 

// 优化后
let name = "张三" ; 
let message = `Hello, ${name} !` ;

4.默认参数

默认函数参数允许您使用默认值初始化命名参数。

// 之前
function greet(name) {
    if (name === undefined) {
        name = "Guest";
    }
    return `Hello, ${name}`;
}

// 优化后
function greet(name = "Guest") {
    return `Hello, ${name}`;
}


5. 解构赋值

解构允许你将数组中的值或对象的属性解包到不同的变量中。

// 之前
const person = { name: "张三" , age: 21 }; 
const name = person.name; 
const age = person.age; 

// 优化后
const person = { name: "张三r" , age: 21 }; 
const { name, age } = person;

6. 扩展运算符

扩展运算符允许你将可迭代对象(如数组)的元素扩展为新的数组或对象。

// 之前
const arr1 = [ 1 , 2 , 3 ]; 
const arr2 = [ 4 , 5 , 6 ]; 
const combined = arr1.concat ( arr2); 

// 优化后
const arr1 = [ 1 , 2 , 3 ]; 
const arr2 = [ 4 , 5 , 6 ]; 
const combined = [...arr1, ...arr2];

7.使用===代替==

使用===确保值和类型相同,避免意外的类型强制。

// 之前
if (x == "5" ) { 
    // 如果 x 是 "5" 或 5,则为真
} 

// 优化后
if (x === 5 ) { 
    // 仅当 x 正好是 5 时,才为真
}


8. 使用 Async/Await 编写异步代码

Async/await 使异步代码看起来和行为起来像同步代码,使其更具可读性和可维护性。
// 之前
function fetchData() {
    return fetch('https://api.example.com/data')
        .then(response => response.json())
        .then(data => {
            console.log(data);
        });
}

// 优化后
async function fetchData() {
    try {
        const response = await fetch('https://api.example.com/data');
        const data = await response.json();
        console.log(data);
    } catch (error) {
        console.error('Error fetching data:', error);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值