当前位置: 首页 > news >正文

清远网站建设qq群引流推广平台免费

清远网站建设,qq群引流推广平台免费,网站开发购物店,吉林省 网站建设本文将介绍7种JavaScript的优化技巧,这些技巧可以帮助你更好的写出简洁优雅的代码。 1. 字符串的自动匹配(Array.includes) 在写代码时我们经常会遇到这样的需求,我们需要检查某个字符串是否是符合我们的规定的字符串之一。最常…

本文将介绍7种JavaScript的优化技巧,这些技巧可以帮助你更好的写出简洁优雅的代码。

1. 字符串的自动匹配(Array.includes

在写代码时我们经常会遇到这样的需求,我们需要检查某个字符串是否是符合我们的规定的字符串之一。最常见的方法就是使用||===去进行判断匹配。但是如果大量的使用这种判断方式,定然会使得我们的代码变得十分臃肿,写起来也是十分累。其实我们可以使用Array.includes来帮我们自动去匹配。

代码示例:

// 未优化前的写法
const isConform = (letter) => {if (letter === "a" ||letter === "b" ||letter === "c" ||letter === "d" ||letter === "e") {return true;}return false;
}; 
// 优化后的写法
const isConform = (letter) =>["a", "b", "c", "d", "e"].includes(letter); 

2.for-offor-in自动遍历

for-offor-in,可以帮助我们自动遍历Arrayobject中的每一个元素,不需要我们手动跟更改索引来遍历元素。

注:我们更加推荐对象(object)使用for-in遍历,而数组(Array)使用for-of遍历

for-of

const arr = ['a',' b', 'c'];
// 未优化前的写法
for (let i = 0; i < arr.length; i++) {const element = arr[i];console.log(element);
} 
// 优化后的写法
for (const element of arr) { console.log(element);
}
// expected output: "a"
// expected output: "b"
// expected output: "c" 

for-in

const obj = {a: 1,b: 2,c: 3,
};
// 未优化前的写法
const keys = Object.keys(obj);
for (let i = 0; i < keys.length; i++) {const key = keys[i];const value = obj[key];// ...
} 
// 优化后的写法
for (const key in obj) {const value = obj[key];// ...
} 

3.false判断

如果你想要判断一个变量是否为null、undefined、0、false、NaN、'',你就可以使用逻辑非(!)取反,来帮助我们来判断,而不用每一个值都用===来判断

// 未优化前的写法
const isFalsey = (value) => {if (value === null ||value === undefined ||value === 0 ||value === false ||value === NaN ||value === "") {return true;}return false;
}; 
// 优化后的写法
const isFalsey = (value) => !value; 

4.三元运算符代替(if/else

在我们编写代码的时候肯定遇见过if/else选择结构,而三元运算符可以算是if/else的一种语法糖,能够更加简洁的表示if/else

// 未优化前的写法
let info;
if (value < minValue) {info = "Value is最小值";
} else if (value > maxValue) {info = "Value is最大值";
} else {info = "Value 在最大与最小之间";
} 
//优化后的写法
const info =value < minValue? "Value is最小值": value > maxValue ? "Value is最大值" : "在最大与最小之间"; 

5.函数调用的选择

三元运算符还可以帮我们判断当前情况下该应该调用哪一个函数,

function f1() {// ...
}
function f2() {// ...
}
// 未优化前的写法
if (condition) {f1();
} else {f2();
} 
// 优化后的写法
(condition ? f1 : f2)(); 

6.用对象代替switch/case选择结构

switch case通常是有一个case值对应一个返回值,这样的结构就类似于我们的对象,也是一个键对应一个值。我们就可以用我们的对象代替我们的switch/case选择结构,使代码更加简洁

const dayNumber = new Date().getDay();// 未优化前的写法
let day;
switch (dayNumber) {case 0:day = "Sunday";break;case 1:day = "Monday";break;case 2:day = "Tuesday";break;case 3:day = "Wednesday";break;case 4:day = "Thursday";break;case 5:day = "Friday";break;case 6:day = "Saturday";
} 
// 优化后的写法
const days = {0: "Sunday",1: "Monday",2: "Tuesday",3: "Wednesday",4: "Thursday",5: "Friday",6: "Saturday",
};
const day = days[dayNumber]; 

7. 逻辑或(||)的运用

如果我们要获取一个不确定是否存在的值时,我们经常会运用if判断先去判断值是否存在,再进行获取。如果不存在我们就会返回另一个值。我们可以运用逻辑或(||)的特性,去优化我们的代码

// 未优化前的写法
let name;
if (user?.name) {name = user.name;
} else {name = "Anonymous";
} 
// 优化后的写法
const name = user?.name || "Anonymous"; 

最后

整理了75个JS高频面试题,并给出了答案和解析,基本上可以保证你能应付面试官关于JS的提问。



有需要的小伙伴,可以点击下方卡片领取,无偿分享

http://www.ds6.com.cn/news/57202.html

相关文章:

  • 招聘外包服务公司seo优化工作内容
  • 吉林智能网站建设价格百度seo高级优化
  • 市场营销策略的概念seo的中文含义是什么意思
  • 旅游网站排行榜前十名官网网页设计模板
  • 越南的网站建设各大引擎搜索入口
  • 虚拟主机空间发布网站企业营销策划是做什么的
  • 网站备案 法人外贸建站优化
  • B2B网站建站系统他达拉非功效与作用主要会有哪些
  • 自己怎么做电影网站可以赚钱吗什么是优化师
  • dz动力 wordpressseo模拟点击
  • 备案个人网站名称大全91手机用哪个浏览器
  • 专门做美甲的网站一台电脑赚钱的门路
  • 一个网站开发周期中央突然宣布一个大消息
  • 欧美做电影 迅雷下载网站武汉网站提升排名
  • 淮安营销型网站建设长沙线上引流公司
  • 合肥网站营销推广外贸建站推广公司
  • 网页和网站的区别百度一下首页官网百度
  • vps 需刷新几次才能打开网站百度关键词推广价格
  • 做网站还赚钱么网站排行榜前十名
  • 如何用c语言做钓鱼网站seo推广费用需要多少
  • 重庆专业网站建设公司站长之家论坛
  • 用二级域名做的网站算新站吗成都网络推广公司
  • 北京哪个公司做网站好百度图片搜索引擎入口
  • 网站模板含数据库下载google排名
  • 设计网站怎么做如何免费注册一个网站
  • 响应式网站开发原理百度seo关键词排名优化工具
  • 郑州设计工作室seo营销方案
  • 新手去哪个网站做翻译百度搜索排名查询
  • 电商数据网站有哪些专业做网站
  • b2c网站建设百度推广的效果