资讯专栏INFORMATION COLUMN

js中“||”和“&&”的高级用法

_DangJin / 433人阅读

摘要:没想到会有人收藏,而且这些不是我自己悟出来的,是网络上找到的一篇文章我读懂后转过来的,原文是例用于赋值从左往右依次判断,当当前值为则继续,为则返回此值是返回未转换为布尔值时的原值哦从左往右依次判断,当当前值为则继续,为则返回此值是返回未转换

没想到会有人收藏,而且这些不是我自己悟出来的,是网络上找到的一篇文章我读懂后转过来的,原文是http://www.jb51.net/article/21339.htm

例1:用于赋值
&&:从左往右依次判断,当当前值为true则继续,为false则返回此值(是返回未转换为布尔值时的原值哦)
|| : 从左往右依次判断,当当前值为false则继续,为true则返回此值(是返回未转换为布尔值时的原值哦)

// => aaa
var attr = true && 4 && "aaa";

// => 0
var attr = true && 0 && "aaa";

// => 100
var attr = 100 || 12;

// => e
var attr = "e" || "hahaha"

// => hahaha
var attr = "" || "hahaha"

例2 经过多次判断的赋值

/*
x>=15时 => 4
x>=12时 => 3
x>=10时 => 2
x>=5时 => 1
x<5时 => 0
*/
console.log((x>=15 && 4) || (x>=12 && 3) || (x>=10 && 2) || (x>=5 && 1) || 0);

例3 与对象形式的变量合体

/*
x=15 时 => 4
x=12 时 => 3
x=10 时 => 2
x=5 时 => 1
其它 => 0
*/
console.log( {"5":1,"10":2,"12":3,"15":4}[x] || 0 );

例4 用于执行语句

if(a >=5){alert("你好");}
//可以写成: 
a >= 5 && alert("你好");

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/85465.html

相关文章

  • Pytest测试报告工具Allure高级用法

     小编写这篇文章的主要目的,是给大家来做个介绍,介绍关于测试报告工具Allure用法的一些详解,主要是关于一些Pytest Allure类的用法,那么,具体的代码实例是什么呢?下面就给大家详细解答下。  Allure除了具有Pytest基本状态外,其他几乎所有功能也都支持。  1、严重性  如果你想对测试用例进行严重等级划分,可以使用 allure.severity装饰器,它可以应用于函数,方法或...

    89542767 评论0 收藏0
  • 一文搞懂Vue3异步组件defineAsyncComponentAPI用法

      为了更好的提升用户的体验,我们要缩短加载的时间,要一些组件仅在需要的时候才加载这样极大的节约加载时间,提升用户访问效果。  现在我们可以用Vue3来作为一个实现方法,即defineAsyncComponent,这个方法可以传递两种类型的参数,分别是函数类型和对象类型,接下来我们分别学习。  传递工厂函数作为参数  defineAsyncComponent方法接收一个工厂函数是它的基本用法,这个...

    3403771864 评论0 收藏0
  • 解读高级前端必会package.json字段

      今天想为大家讲讲前端项目的package.json文件中相关的字段含义及使用场景。我们先避免一些配置性的错误,提高项目的维护性。  name  我们要知道当项目是需要发版为npm包的,那么name字段是必须的。因为它涉及到npm包的命名。  举个例子  笔者曾发布过开源的npm包,名字是ping-url。  对应的源代码package.json的定义如下:  {   "name&qu...

    3403771864 评论0 收藏0
  • Vue3$emit用法指南(含选项API、组合API及setup语法糖)

      在开发中,Vue模式使用props将数据从父组件传递到子组件。那如何将一个子组件将数据传给它的父组件呢?有关使用emit,我们可以触发事件并将数据传递到组件的层次结构中。以下举例一些情况,如:  从 input 中发出数据  从 modal 本身内部关闭 modal  父组件响应子组件  Vue Emit是如何工作的?  当我们 emit 一个事件时,我们用一个或多个参数调用一个方法:  ev...

    3403771864 评论0 收藏0
  • JS 逻辑操作符 &amp;&amp; || 用法

    摘要:包括不为不为空,返回的都是第二个值。当第一个操作数求值为时,则会返回第一个操作数。和下判断加载的情况,并设置回调函数。当不满足,判断,不满足,判断一直进行下去 练习题 首先来做几个题目: var found = true; var result = (found && someUndefinedVariable); console.log(result); var found = f...

    ctriptech 评论0 收藏0

发表评论

0条评论

_DangJin

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<