返回顶部
首页 > 资讯 > 前端开发 > html >JavaScript中不用if写代码有哪些特点
  • 421
分享到

JavaScript中不用if写代码有哪些特点

2024-04-02 19:04:59 421人浏览 独家记忆
摘要

这篇文章主要讲解了“不用if写代码有哪些特点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“不用if写代码有哪些特点”吧!示例1: 统计数组中的奇数假设我们有

这篇文章主要讲解了“不用if写代码有哪些特点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“不用if写代码有哪些特点”吧!

示例1: 统计数组中的奇数

假设我们有一个整数数组arrayOfIntegers,现在需要统计其中奇数的个数:

const arrayOfIntegers = [1, 4, 5, 9, 0, -1, 5];

使用if

let counter = 0; arrayOfIntegers.forEach((integer) => {   const remainder = Math.abs(integer % 2);   if (remainder === 1) {     counter++;   } });  console.log(counter);

console.log(counter);

不用if

let counter = 0;  arrayOfIntegers.forEach((integer) => {   const remainder = Math.abs(integer % 2);   counter += remainder; });  console.log(counter);

不用if时,我们巧妙地利用了奇数与偶数的特性,它们除以2的余数分别是0和1。

示例2: 判断工作日和周末

给定一个日期(比如new Date()),判断它是工作日还是周末,分别返回”weekend”和”weekday”。

使用if

const weekendOrWeekday = (inputDate) => {   const day = inputDate.getDay();    if (day === 0 || day === 6) {     return 'weekend';   }       return 'weekday';    // Or, for ternary fans:   // return (day === 0 || day === 6) ? 'weekend' : 'weekday'; };  console.log(weekendOrWeekday(new Date()));

不用if

const weekendOrWeekday = (inputDate) => {   const day = inputDate.getDay();    return weekendOrWeekday.labels[day] ||           weekendOrWeekday.labels['default']; };  weekendOrWeekday.labels = {    0: 'weekend',    6: 'weekend',    default: 'weekday'  };  console.log(weekendOrWeekday(new Date()));

你是否发现if语句中其实隐含着一些信息呢?它告诉我们哪一天是周末,哪一天是工作日。因此,要去掉if语句的话,我们只需要把这些信息写入weekendOrWeekday.labels对象,然后直接使用它就好了。

示例3: doubler函数

写一个doubler函数,它会根据参数的类型,进行不同的操作:

  1. 如果参数是数字,则乘以2(i.e. 5 => 10, -10 => -20);

  2. 如果参数是字符串,则每个字符重复2次 (i.e. 'hello' => 'hheelloo');

  3. 如果参数是函数,则调用2次;

  4. 如果参数是数组,则将每一个元素作为参数,调用doubler函数

  5. 如果参数是对象,则将每个属性值作为参数,调用doubler函数

使用switch

const doubler = (input) => {   switch (typeof input) {     case 'number':       return input + input;     case 'string':       return input         .split('')         .map((letter) => letter + letter)         .join('');     case 'object':       Object.keys(input)             .map((key) => (input[key] = doubler(input[key])));       return input;     case 'function':       input();       input();   } };  console.log(doubler(-10)); console.log(doubler('hey')); console.log(doubler([5, 'hello'])); console.log(doubler({ a: 5, b: 'hello' })); console.log(   doubler(function() {     console.log('call-me');   }), );

不用switch

const doubler = (input) => {   return doubler.operationsByType[typeof input](input); };  doubler.operationsByType = {   number: (input) => input + input,   string: (input) =>     input       .split('')       .map((letter) => letter + letter)       .join(''),   function: (input) => {     input();     input();   },   object: (input) => {     Object.keys(input)           .map((key) => (input[key] = doubler(input[key])));     return input;   }, };

可知,我将每一种参数类型对应的操作绑定到了doubler.operationsByType,这样不需要switch语句,就可以实现doubler函数了。

感谢各位的阅读,以上就是“不用if写代码有哪些特点”的内容了,经过本文的学习后,相信大家对不用if写代码有哪些特点这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: JavaScript中不用if写代码有哪些特点

本文链接: https://lsjlt.com/news/85939.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • JavaScript中不用if写代码有哪些特点
    这篇文章主要讲解了“不用if写代码有哪些特点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“不用if写代码有哪些特点”吧!示例1: 统计数组中的奇数假设我们有...
    99+
    2024-04-02
  • JavaScript特点有哪些
    这篇文章将为大家详细讲解有关JavaScript特点有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。  一、JavaScript是什么?  1、JavaScript是...
    99+
    2024-04-02
  • JavaScript代码组织结构良好的特点有哪些
    本篇内容主要讲解“JavaScript代码组织结构良好的特点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“JavaScript代码组织结构良好的特点有哪些...
    99+
    2024-04-02
  • javascript具有哪些特点
    这篇文章主要介绍“javascript具有哪些特点”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“javascript具有哪些特点”文章能帮助大家解决问题。 ...
    99+
    2024-04-02
  • JavaScript中最常用的代码简写技巧有哪些
    这篇文章给大家分享的是有关JavaScript中最常用的代码简写技巧有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、三元操作符当想写if…else语句时,使用三元操作符来...
    99+
    2024-04-02
  • javascript有哪些基本特点
    本文小编为大家详细介绍“javascript有哪些基本特点”,内容详细,步骤清晰,细节处理妥当,希望这篇“javascript有哪些基本特点”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新...
    99+
    2024-04-02
  • javascript对象有哪些特点
    这篇文章主要讲解了“javascript对象有哪些特点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“javascript对象有哪些特点”吧! ...
    99+
    2024-04-02
  • javascript语言有哪些特点
    javascript的特点:1.是一种解释型的脚本语言;2.是一种基于对象的脚本语言;3.是一种动态类型语言;4.是一种安全性语言;5.跨平台性;javascript的特点有以下几点javascript是一种解释型的脚本语言,不需要预编译,...
    99+
    2024-04-02
  • 编写JavaScript代码的小技巧有哪些
    小编给大家分享一下编写JavaScript代码的小技巧有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1 Array.inc...
    99+
    2024-04-02
  • 编写现代JavaScript代码的小技巧有哪些
    这篇文章主要介绍“编写现代JavaScript代码的小技巧有哪些”,在日常操作中,相信很多人在编写现代JavaScript代码的小技巧有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望...
    99+
    2024-04-02
  • Golang的特点及写法有哪些
    今天小编给大家分享一下Golang的特点及写法有哪些的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、Golang的特点及应...
    99+
    2023-07-05
  • 可以编写javascript代码的软件有哪些
    小编给大家分享一下可以编写javascript代码的软件有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!可以编写javascript代码的软件:Webstor...
    99+
    2023-06-15
  • CSS代码书写顺序知识点有哪些
    这篇文章主要介绍“CSS代码书写顺序知识点有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“CSS代码书写顺序知识点有哪些”文章能帮助大家解决问题。 这里推荐...
    99+
    2024-04-02
  • 不用备案的cdn有哪些特点
    1、无需备案相对于需要备案的CDN,不用备案的CDN可以省去备案过程,快速启用服务,节省时间和成本。2、价格相对较低不用备案的CDN...
    99+
    2023-05-13
    不用备案的cdn cdn
  • JavaScript递归函数有哪些特点
    JavaScript递归函数的特点如下:1. 自我调用:递归函数会自己调用自己,以解决一个问题的子问题,直到达到基本情况。2. 基本...
    99+
    2023-09-22
    JavaScript
  • Python代码写法有哪些
    本篇内容介绍了“Python代码写法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!打印index对于一个列表,或者说一个序列我们经常需...
    99+
    2023-06-17
  • 实用的HTML特效代码有哪些
    这篇文章主要介绍实用的HTML特效代码有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!   1。忽视右键   <body>   或   <body st...
    99+
    2024-04-02
  • 实用JavaScript代码片段有哪些
    实用JavaScript代码片段有哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1. 下载一个excel文档同时适用于wo...
    99+
    2024-04-02
  • JavaScript代码调试有哪些
    这篇文章将为大家详细讲解有关JavaScript代码调试有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1.alert()通常可以使用警告框来提示变量信...
    99+
    2024-04-02
  • JavaScript代码规范有哪些
    本篇内容介绍了“JavaScript代码规范有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!所有的 J...
    99+
    2024-04-02
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作