提高 javascript 代码效率的技巧

简介: 优雅的代码编写格式,提升效率的同时更美观

🎈 变量声明

  • 多个变量的声明,可以简写
// 非效率写法letx;
lety;
letz=520;
// 效率写法letx, y, z=520;


🎈 三元运算符

  • 在条件判断时,可以使用三元运算符增加效率
letnum1=520;
letnum2=1314;
// 非效率写法if (num1>num2) {
// ...} else {
// ...}
// 效率写法letresult=num1>num2?true : false;


🎈 解构赋值

  • 变量赋值
leta, b, c;
// 非效率写法a=1;
b=2;
c=3;
// 效率写法let [a, b, c] = [1, 2, 3];


🎈 解构交换

  • 交换两个变量
letx='极客飞兔', y='程序员';
// 非效率写法consttemp=x;
x=y;
y=temp;
// 效率写法[x, y] = [y, x];


🎈 箭头函数

  • 函数的简写方式
// 非效率写法functionadd(num1, num2) {
returnnum1+num2;
}
// 效率写法constadd= (num1, num2) =>num1+num2;


🎈 字符串模版

// 非效率写法console.log('极客飞兔的年龄 '+age+' 他的身高 '+height);
// 效率写法console.log(`极客飞兔的年龄 ${age}他的身高 ${height}`);


🎈 多值匹配

  • 判断某个值是否等于某个多个值中的一个
// 非效率写法if (value===1||value==='飞兔'||value===2||value==='程序员') {
// ...}
// 效率写法一if ([1, '飞兔', 2, '程序员'].indexOf(value) >=0) {
// ...}
// 效率写法二if ([1, '飞兔', 2, '程序员'].includes(value)) { 
// ...}


🎈 ES6对象简写

letfirstname='极客';
letlastname='飞兔';
// 非效率写法letuserinfo= {firstname: firstname, lastname: lastname};
// 效率写法letuserinfo= {firstname, lastname};


🎈 字符串转数字

// 非效率写法lettotal=parseInt('520');
letaverage=parseFloat('13.14');
// 效率写法lettotal=+'520';
letaverage=+'13.14';


🎈 次方相乘

// 非效率写法constpower=Math.pow(2, 5);
// 效率写法constpower=2**5;


🎈 数组合并

letarr1= [520, 1314];
// 非效率写法letarr2=arr1.concat([1225, 1115]);
// 效率写法letarr2= [...arr1, 1225, 1115];


🎈 查找数组最大值最小值

constarr= [520, 1314, 1115, 1225];
// 效率写法Math.max(...arr);
Math.min(...arr);


🎈 获取字符串字符

letstr='https://autofelix.blog.csdn.net/';
// 非效率写法str.charAt(10);
// 效率写法str[10];


🎈 并&&操作

functionfn() {
returntrue;
}
letflag=true;
// 非效率写法if (flag) {
fn();
}
// 效率写法flag&&fn();


🎈 数组排序

constarr= [40, 2, 1, 5, 99, 111];
// 从小到大arr.sort((a, b) =>a-b); // [1, 2, 5, 40, 99, 111]// 从大到小arr.sort((a, b) =>b-a); // [111, 99, 40, 5, 2, 1]


🎈 数组过滤

  • 从数组中过滤假数值
constarr= [3, '1', '', 0, false, null, undefined];
arr.filter(Boolean); // [3, '1']


🎈 for循环

letarr= ['极客飞兔', 520, 1314, '程序员']
// 非效率写法for (vari=0; i<arr.length; i++) {}
// 效率写法for (constiinarr) {}
// 效率写法for (constiofarr) {}


🎈 判断奇偶

  • 使用& 1 判断奇偶数
// 非效率写法if(value/2==0) {
// 是偶数} else {
// 是奇数}
// 效率写法2&1; // 0 返回0表示偶数3&1; // 1 返回1表示奇数


🎈 数组去重

constarray= [5,4,7,8,9,2,7,5];
// 效率的两种写法array.filter((item,idx,arr) =>arr.indexOf(item) ===idx);
constnonUnique= [...newSet(array)];


🎈 IF检查

// 非效率写法if (result===true)
// 效率写法if (result)


🎈 合并对象

constuser= { 
name: '极客飞兔', 
gender: '男'};
constcollege= { 
primary: '清华大学', 
secondary: '社会大学'};
constskills= { 
java: 'JAVA', 
php: 'PHP', 
python: 'PYTHON'};
constsummary= {...user, ...college, ...skills};


🎈 可选链

constuser= {
employee: {
name: "极客飞兔"  }
};
// 可选链user.employee?.name;
user.employ?.name;
user.employ.name;


🎈 字符串重复

// 非效率写法letstr=''; 
for(leti=0; i<5; i++) { 
str+='autofelix '; 
} 
// 效率写法'autofelix '.repeat(5);


🎈 默认值

letuser; 
letname=getUserName();
// 非效率写法if (name!==null&&name!==undefined&&name!=='') {
user=name;
} else {
user='极客飞兔';
}
// 效率写法letuser=getUserName() ||'极客飞兔';


🎈 双波浪线运算符

// 非效率写法constfloor=Math.floor(6.8); // 6// 效率写法constfloor=~~6.8; // 6


🎈 移除对象属性

letobj= {x: 45, y: 72, z: 68, p: 98};
// 非效率写法deleteobj.x;
deleteobj.p;
console.log(obj); // {y: 72, z: 68}// 效率写法let {x, p, ...newObj} =obj;
console.log(newObj); // {y: 72, z: 68}
相关文章
|
27天前
|
JSON JavaScript 前端开发
JavaScript原生代码处理JSON的一些高频次方法合集
JavaScript原生代码处理JSON的一些高频次方法合集
|
2月前
|
存储 JavaScript 前端开发
非常实用的JavaScript一行代码(整理总结)
非常实用的JavaScript一行代码(整理总结)
30 0
|
2月前
|
JavaScript 前端开发 测试技术
如何编写JavaScript模块化代码
如何编写JavaScript模块化代码
13 0
|
5天前
|
JavaScript 前端开发 开发工具
【JavaScript 与 TypeScript 技术专栏】TypeScript 如何提升 JavaScript 代码的可读性与可维护性
【4月更文挑战第30天】TypeScript 提升 JavaScript 代码的可读性和可维护性,主要通过静态类型系统、增强代码组织、智能提示与错误检测、文档化和在大型项目中的优势。静态类型减少误解,类和接口提供结构,智能提示提高编码效率,类型注解充当内置文档。在大型项目中,TypeScript 降低理解差异,平滑迁移现有 JavaScript 项目,助力提高开发效率和项目质量。
|
12天前
|
JavaScript 前端开发 算法
< JavaScript小技巧:如何优雅的用【一行代码 】实现Js中的常用功能 >
在开发中,采用简洁的语法和结构,遵循一致的命名规范,具有良好的代码组织和注释,能很好的提高代码的质量。可读性:易于阅读和理解。清晰的命名、简洁的语法和良好的代码结构可以使代码的意图更加明确,降低理解代码的难度,提高代码的可读性。可维护性:易于维护。当代码逻辑清晰、结构简洁时,开发者可以更快速地定位和修复bug,进行功能扩展或修改。同时,可读性高的代码也有助于后续的代码重构和优化。可扩展性:更具有扩展性和灵活性。清晰的代码结构和简洁的代码风格使得添加新功能、修改现有功能或扩展代码更加容易。
< JavaScript小技巧:如何优雅的用【一行代码 】实现Js中的常用功能 >
|
12天前
|
前端开发 JavaScript 容器
JavaScript、CSS像素动画特效代码
此示例创建一个带有像素粒子的容器,每隔300毫秒就会动态添加一个新的像素粒子,然后通过CSS的关键帧动画(`@keyframes`)使它们产生上升和逐渐消失的动画效果。你可以根据需要修改像素粒子的颜色、大小、动画效果和创建速度。
12 0
|
19天前
|
JavaScript
js校验统一社会信用代码
js校验统一社会信用代码
19 0
|
22天前
|
监控 前端开发 JavaScript
如何在浏览器中使用javaScript进行代码调试
【4月更文挑战第11天】在浏览器中调试JavaScript是前端开发的关键技能。使用开发者工具(可通过F12、右键检查或菜单栏访问),遵循以下步骤:1) 打开Sources标签页查看所有脚本;2) 设置断点在需要暂停的代码行;3) 刷新页面触发断点;4) 利用调试工具如Scopes、Watch、Call Stack等检查代码状态;5) 使用Console辅助调试;6) 利用其他工具如Network、Performance和Memory进行性能分析。确保使用最新工具,保持代码清晰,以提升调试效率。
43 4
|
28天前
|
小程序 开发者
微信小程序“Error: xxx.js 已被代码依赖分析忽略,无法被其他模块引用”报错?
微信小程序“Error: xxx.js 已被代码依赖分析忽略,无法被其他模块引用”报错?
|
1月前
|
前端开发 JavaScript UED
【前端】javascript+html+css 家具销售网站(代码+报告)
【前端】javascript+html+css 家具销售网站(代码+报告)