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

东莞专业网站设计建站公司最近10个新闻

东莞专业网站设计建站公司,最近10个新闻,wordpress数据库改主机,项目网创业JavaScript开发技巧#xff08;上篇#xff09; 1、前言2、从数组中删除假值3、数组搜索4、空值合并运算符5、逻辑或赋值运算符6、多值匹配7、三元表达式8、短路评估9、科学计数法10、位运算符11、指数求幂 1、前言 JavaScript中有很多速记技巧#xff0c;可以缩短代码长度… JavaScript开发技巧上篇 1、前言2、从数组中删除假值3、数组搜索4、空值合并运算符5、逻辑或赋值运算符6、多值匹配7、三元表达式8、短路评估9、科学计数法10、位运算符11、指数求幂 1、前言 JavaScript中有很多速记技巧可以缩短代码长度减少冗余提高代码的可读性和可维护性。本文将介绍提高效率的JS缩写技巧帮助你告别写垃圾的生活轻松写出优雅的代码 2、从数组中删除假值 您可以使用 filter() 组合布尔值来简化从数组中删除假值的过程。false 值是指将 false 视为条件的值例如 null、未定义、空字符串“”或 ‘’、0、NaN 和 false。 传统写法 let arr [12, null, 0, xyz, null, -25, NaN, , undefined, 0.5, false];let filterArray arr.filter(value {if(value) {return value}; }); console.log(filterArray) // [12, xyz, -25, 0.5]简化写法 let arr [12, null, 0, xyz, null, -25, NaN, , undefined, 0.5, false];let filterArr arr.filter(value Boolean(value)); // [12, xyz, -25, 0.5]更简洁的写法 let arr [12, null, 0, xyz, null, -25, NaN, , undefined, 0.5, false];let filterArray arr.filter(Boolean); // [12, xyz, -25, 0.5]Boolean 是 JavaScript 的内置构造函数通过将值传递给它来将值转换为布尔值。在本例中Boolean 构造函数作为回调函数传递给 filter() 方法从而将每个数组元素转换为布尔值。只有转换结果为 true 的元素才会保留在新数组中。 注意该方法也会过滤掉0。如果不需要过滤掉0则需要额外判断。 3、数组搜索 当搜索数组时indexOf()用于获取搜索项的位置。如果未找到该项目则返回值为-1。在 JavaScript 中0 被视为 false大于或小于 0 的数字被视为 true。因此需要这样写 传统写法 if(arr.indexOf(item) -1) { } if(arr.indexOf(item) -1) { }简化写法 if(~arr.indexOf(item)) {} if(!~arr.indexOf(item)) {}按位 NOT (~) 运算符对于除 -1 之外的任何值都返回“真”值。要否定它只需使用 !~ 即可。或者您可以使用includes()函数 if(arr.includes(item)) {}4、空值合并运算符 null 合并运算符 (??) 用于为 null 或 .undefined 的变量提供默认值 传统写法 const fetchUserData () {return Xiuer Old; };const data fetchUserData(); const username data ! null data ! undefined ? data : Guest;简化写法 const fetchUserData () {return Xiuer Old; };const data fetchUserData(); const username data ?? medium;另外还有一个空合并赋值运算符??用于当变量为空null或undefined时执行赋值操作。 传统写法 let variable1 null; let variable2 Xiuer Old;if (variable1 null || variable1 undefined) {variable1 variable2; }简化写法 let variable1 null; let variable2 Xiuer Old;variable1 ?? variable2;??写法更简洁更容易阅读。它首先检查变量 1 是否为 null 或未定义如果是则将值赋给变量 2。如果variable1已经有一个非空值则不会发生赋值。 5、逻辑或赋值运算符 逻辑或赋值运算符 (||) 用于为变量指定默认值。 传统写法 let count; if (!count) {count 0; }简化写法 let count; count || 0;当 count 为假值例如 undefined、null、false、0、NaN 或空字符串时逻辑 OR 赋值运算符将赋值 0。count 否则它保留 count 的原始值。 6、多值匹配 对于多个值的匹配可以将所有值放入一个数组中然后使用indexOf()方法进行检查。indexOf() 方法是 JavaScript 数组的内置方法用于返回指定元素在数组中第一次出现的位置索引。如果数组中不存在该元素则返回-1。 传统写法 if (value 1 || value one || value 2 || value two) {// ... }简化写法 if ([1, one, 2, two].indexOf(value) 0) {// ... }7、三元表达式 这可以使用三元表达式 if...else 来简化。 传统写法 let isAdmin; if (user.role admin) {isAdmin true; } else {isAdmin false; }简化写法 const isAdmin user.role admin ? true : false;更简化的写法 const isAdmin user.role admin;8、短路评估 将一个变量的值分配给另一个变量时您可能需要确保源变量不为 null、未定义或为空。您可以编写包含多个条件的长 if 语句或使用短路求值来简化。 if (variable1 ! null || variable1 ! undefined || variable1 ! ) {let variable2 variable1; }使用短路评估简化的代码如下 const variable2 variable1 || new;对于逻辑 OR (||) 运算符以下值被视为 false false0空字符串“”或“”nullundefinedNaN因此如果值本身可能是其中之一则不适合使用短路评估。 短路评估还可以避免函数调用中不必要的函数执行。 传统写法 function fetchData() {if (shouldFetchData) {return fetchDataFromAPI();} else {return null;} }简化写法 function fetchData() {return shouldFetchData fetchDataFromAPI(); }当 shouldFetchData 为 true 时短路评估继续执行函数的 fetchDataFromAPI() 并返回其结果。如果shouldFetchData为假值短路求值将直接返回假值null避免不必要的函数调用。 9、科学计数法 可以使用科学和技术方法来表示数字以省略尾随零。例如1e7it 实际上意味着 1 后面跟着 7 个零。它代表 10,000,000 的十进制等值。 传统写法 for (let i 0; i 10000; i) {}简化写法 for (let i 0; i 1e7; i) {}// 下面的所有比较都将返回 true 1e0 1; 1e1 10; 1e2 100; 1e3 1000; 1e4 10000; 1e5 100000;10、位运算符 双位 NOT 运算符有一个非常实际的用途您可以用它来替换 Math.floor() 函数在执行相同操作时速度更快。 传统写法 Math.floor(4.9) 4 //true简化写法 ~~4.9 4 //true11、指数求幂 指数求幂运算可以使用 * 来简化。 传统写法 Math.pow(2,3); // 8 Math.pow(2,2); // 4 Math.pow(4,3); // 64简化写法 2**3 // 8 2**4 // 4 4**3 // 64从ES7ECMAScript 2016开始JavaScript引入了指数幂运算符**使指数幂运算更加简洁。
http://www.yutouwan.com/news/382532/

相关文章:

  • 零基础建网站深圳平台网站开发
  • 石家庄网站外包wordpress博客模板缺少插件
  • 公司网站建设苏州劳伦开发公司临检管理办法
  • 吃的网站要怎么做的做公司网站的模板
  • dw创建网站相册怎么进入公司网站
  • 网站是先备案还是先做网站wordpress中文图片插件
  • 建设银行公积金查询网站首页平面设计免费自学网
  • 旅游类网站设计方案南京高端模板建站
  • 网站做哪种推广好网站社区的建设
  • 用来做区位分析的地图网站网站怎么做才吸引人
  • 移动互联网开发天气预报实现效果报告湖北seo服务
  • 网站内容规划广东省建设厅投诉网站首页
  • 郑州网站建设炉石自己的网站没有域名解析
  • 虚拟商品自动发货网站搭建教程深圳金科威公司官网
  • 福州建网站,做网页wordpress文件锁定了
  • 怎么做好网站建设秀网站模板
  • 南京网站建设网站设计云南建设工程招标网站
  • dw自己做网站需要什么区别网络推广的概念
  • 电子商务网站规划与建设论文做美食推广的网站
  • 培训网站app网站建设济宁
  • 制作网站的专业公司网页设计外包价格
  • 大型网站开发什么书籍好自己搭建的网站可以收费吗
  • 个人网站设计开题报告邯郸最新消息
  • php一个企业网站多钱酒店网站搜索引擎优化方案
  • 织梦网站模板安装教程优质公司网站
  • 网站外链工具小程序与app有什么区别
  • 网站 平均加载时间建设公司起名
  • 南宁在哪里推广网站如何做网站的版块规划
  • 做h5商城网站本地网站制作
  • 创建网站的过程设计本笔记本推荐