为什么js 3>2>1 为false,1<2<3为true?

问题:为什么js 3>2>1 为false,1<2<3为true?

首先,我们需要知道,在js中 0 == false和1 == true是正确的。

因此在分析3>2>1时,我们可以将其分为两步,首先是3>2返回是true,也就等价于1。

所以1>1结果自然是false了。

同理,1<2是true,等价于1,1<3也是true。

在可以考虑,3<2<1的情况呢,3<2是false,也就是0,0<1自然就是true了。

时间: 2024-12-28 21:15:11

为什么js 3>2>1 为false,1<2<3为true?的相关文章

js中的==运算: [&#39;&#39;] == false —&gt;true

图1 计算下面表达式的值: [''] == false 首先,两个操作数分别是对象类型.布尔类型.根据图1,需要将布尔类型转为数字类型,而false转为数字的结果是0,所以表达式变为: [''] == 0 两个操作数变成了对象类型.数字类型.根据图1,需要将对象类型转为原始类型: 首先调用[].valueOf(),由于数组的valueOf()方法返回自身,所以结果不是原始类型,继续调用[].toString(). 对于数组来说,toString()方法的算法,是将每个元素都转为字符串类型,然后用

为什么Java中1000==1000为false而100==100为true?

为什么Java中1000==1000为false而100==100为true? 这是一个挺有意思的讨论话题. 如果你运行下面的代码: 基本知识:我们知道,如果两个引用指向同一个对象,用==表示它们是相等的.如果两个引用指向不同的对象,用==表示它们是不相等的,即使它们的内容相同. 因此,后面一条语句也应该是false . 这就是它有趣的地方了.如果你看去看 Integer.Java 类,你会发现有一个内部私有类,IntegerCache.java,它缓存了从-128到127之间的所有的整数对象.

JS事件处理函数中return false到底是什么东西

在<JS DOM编程艺术>一书中,用return false来阻止事件默认行为,可是js高程3里没有这种用法,那这到底是什么呢. 先看一下知乎的一个解释 就此问题,首先要纠正两个观点: 1. 事件处理方法中 的 return false 并不是终止事件,而是阻止事件宿主的默认行为: 2. 不是在所有的事件处理方法中 return fasle 都能阻止事件宿主的默认行为: 事实上,仅仅是在HTML事件属性 和 DOM0级事件处理方法中 才能通过返回 return false 的形式组织事件宿主的

原生js中stopPropagation,preventDefault,return false的区别

1.stopPropagation:阻止事件的冒泡,但不阻止事件的默认行为. 最好莫过于用例子说明: <div id='div'  onclick='alert("div");'>    <ul  onclick='alert("ul");'>        <li id='ul-a' onclick='alert("li");'><a href="http://www.baidu.com&qu

js阻止事件冒泡 return false / e.stopPropagation() /e.preventDefault()

由于每个元素在文档里面触发时都会冒泡 如果每个层上都有alert事件,那么触发里层div时,alert 里层,外层,最外层. 为了防止事件之间干扰,需要阻止事件冒泡. 一般使用e.stopPropagation(); ie8及其以下不支持,需要使用e.cancelBubble=false: 另外e是用来获得window的全局对象.e可以使用任意其他字母或者单词代替,比如a,b,c,d....,event,obj等等. 每当触发一个事件,系统都会给这个事件传一个对象,从而获得全局对象. 比如通过e

js中return、return false 、return true各自代表什么含义

return语句代表需要返回一个值,如果不需要就不需要使用return语句.都类似一个出口,return 可以结束方法体中 return后面部分代码的执行.return false 或者 return true 通常用于判断一些结果. return: 1.返回控制与函数结果   即return + 表达式 ,调用函数,并返回表达式的值 2.返回控制,没有函数值  即return.是函数不需要返回值,当你需要中止函数往下执行时,用这个 大多数情况下,函数经过一系列的运算处理,会有一个返回值,返回到

js中return 、return false 、return true、break、continue区别

在开发中不熟悉这三者区别的同学,一般都知道return可以中止,但会根据字面意思觉得return true 中止当前函数执行,但其后的函数还会继续执行.return false 中止当前函数执行,其后的函数不会执行,这是错误的想法.先看下面控制台的例子 一:可以看出三者都中止了函数执行,return后的语句不再执行,唯一区别是函数的返回值不同. 二:return只是中止当前函数,与其后的函数没有关系, 可见return只是中止当前函数对其后函数没有影响 三:对于函数中的for循环里的return

Vue工程化入口文件main.js中Vue.config.productionTip = false含义

阻止启动生产消息,常用作指令.通俗理解为消息提示的环境配置. 阻止启动生产消息 這又是什麽意思? 看下效果 (1)Vue.config.productionTip = false (2)Vue.config.productionTip = true 感覺多了一行信息 小结: 开发环境下,Vue 会提供很多警告来帮你对付常见的错误与陷阱.而在生产环境下,这些警告语句却没有用,反而会增加应用的体积.此外,有些警告检查还有一些小的运行时开销,这在生产环境模式下是可以避免的.(摘于官网说明) 大概意思应

Java中1000==1000为false而100==100为true

public static void main(String[] args) { int z1 = 0; int z2 = 0; System.out.println(z1==z2);//TRUE Integer a1 = -129; Integer a2 = -129; System.out.println(a1==a2);// FALSE a1 = -128; a2 = -128; System.out.println(a1==a2);//TRUE a1 = 127; a2 = 127; S