js 表达式与运算符 详解(下)
比较运算符:
> 、>= 、<、 <=、 ==、 !=、 ===、 !==、
比较运算符的结果都为布尔值
==只比较值是否相等 而 ===比较的是值和数据类型都要相等
<script>
var a = 5,b = 10;
alert(a>b) //=>false
alert(a>=b) //=>false
alert(a>=5) //=>true 大于等于里面只要满足一样则都返回true
alert(a<b) //=>true
alert(a<=b) //=>true 小于等于里面只要满足一样则都返回true
alert(1==true) //=>true
alert(0==false) //=>true 把类型进行了隐式转换的比较
alert(0==null) //=>false
alert(undefined == null) //=>true undefined 和true的值是相等的
alert(NaN == NaN) //=>false NaN是不能进行自身比较的
alert(undefined === null) //=>false undefined 和 true进行恒等比较则返回false ,因为他们值相同数据类型不同
</script>
逻辑运算符:
&& 、|| 、!
逻辑运算符的返回结果是布尔类型
在逻辑&& 和 ||必须要求两个表达式
&&如果第一个表达式为false造成短路
||如如第一个表达式为true造成短路
<script>
//&&逻辑运算符,必须要求两个表达式
alert(true && true) //=>true 在逻辑&&中只要一个表达式为true则为true
alert(true && false) //=>false
alert(false && true) //=>false 这三种里只要一个为false则为false
alert(false && false) //=>false
var i = 0,j =1
if(i++ && j--){ //i=0 隐式转换为了false
alert(true)
}else{ //=>判断出来为false
alert(false)
}
alert(i) //=>因为经过i++ 所以i=1
alert(j) //j=>1 因为断点的原因,第一个表达式为false,不会再执行第二个表达式,所以J还是等于1
</script>
<script>
//||逻辑运算符,必须要求两个表达式
alert(true || true) //=>true 在逻辑&&中只要一个表达式为true则为true
alert(true || false) //=>true
alert(false || true) //=>true 这三种里只要一个为false则为false
alert(false || false) //=>false
var i = 1,j =1
if(i++ || ++j){ //i=1 隐式转换为了true
alert(true)
}else{ //=>判断出来为ture
alert(false)
}
alert(i) //=>因为经过i++ 所以i=2
alert(j) //j=>1 因为断点的原因,第一个表达式为ture,不会再执行第二个表达式,所以J还是等于1
</script>
<script>
//!逻辑运算符,必须要求两个表达式
alert(!true) //=>返回为false
alert(!false) //=>返回为true 以上都是取反
</script>
js 表达式与运算符 详解(下)的更多相关文章
- js 表达式与运算符 详解(上)
表达式: 表达式是用于JavaScript脚本运行时进行计算的式子,可以包含常量.变量.运算符 <script> var r = 2 var pi = 3.14 var circle = ...
- [js高手之路]深入浅出webpack教程系列3-配置文件webpack.config.js详解(下)
本文继续接着上文,继续写下webpack.config.js的其他配置用法. 一.把两个文件打包成一个,entry怎么配置? 在上文中的webpack.dev.config.js中,用数组配置entr ...
- js调试工具Console命令详解
这篇文章主要介绍了js调试工具Console命令详解,需要的朋友可以参考下 一.显示信息的命令 复制代码 代码如下: < !DOCTYPE html> < html> &l ...
- JQ的offset().top与js的offsetTop区别详解
一.前言 最近在做一个图片懒加载的插件,就纵轴(Y轴)而言,我需要时时获取图片的上偏移量,好判断是否已进入视图区域,而我所理解的是offsetTop应该是跟offset().top一样的,然后陷入了因 ...
- Net is as typeof 运行运算符详解 net 自定义泛型那点事
Net is as typeof 运行运算符详解 概述 在了解运行运算符的前提我们需要了解什么是RTTI ,在任何一门面向对象的语言中,都有RTTI这个概念(即 运行时). RTTI(Run-Ti ...
- JQ的offset().top与JS的getBoundingClientRect区别详解,JS获取元素距离视窗顶部可变距离
壹 ❀ 引 我在 JQ的offset().top与js的offsetTop区别详解 这篇博客中详细分析了JQ方法offset().top与JS属性offsetTop的区别,并得出了一条offset( ...
- SSL/TLS协议详解(下)——TLS握手协议
本文转载自SSL/TLS协议详解(下)--TLS握手协议 导语 在博客系列的第2部分中,对证书颁发机构进行了深入的讨论.在这篇文章中,将会探索整个SSL/TLS握手过程,在此之前,先简述下最后这块内容 ...
- 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理
[微信小程序项目实践总结]30分钟从陌生到熟悉 前言 我们之前对小程序做了基本学习: 1. 微信小程序开发07-列表页面怎么做 2. 微信小程序开发06-一个业务页面的完成 3. 微信小程序开发05- ...
- JS中this关键字详解
本文主要解释在JS里面this关键字的指向问题(在浏览器环境下). 阅读此文章,还需要心平气和的阅读完,相信一定会有所收获,我也会不定期的发布,分享一些文章,共同学习 首先,必须搞清楚在JS里面,函数 ...
随机推荐
- Google的一些功能和软件
本博文的主要内容有 .Google的一些功能和软件 Google的一些功能和软件 1. iGoogle 2. Google Earth 3. Google Talk http://www.goo ...
- 用mysqlslap压测mysql
参考文献:http://my.oschina.net/costaxu/blog/108568 上面网友详细的列举了用mysqlslap对mysql的压力测试结果,我也照葫芦画瓢试了一次,结果如下: 以 ...
- HTML5笔记(一)
1.HTML5提供了一些新的元素和属性,例如<nav>(网站导航块)和<footer>.这些标签较有利于搜索引擎的索引整理,同时更好的帮助小屏幕装置和视频人士使用,除此之外,还 ...
- 关于平移的 scrollTo和scrollBy的区别
这几天在项目中要求一部分布局实现整体偏移的效果 在网上查了下我使用来ScrollBy(x,y)方法 他的意思是将view实现整体偏移 而ScollTo(x,y)则是将原点偏移到相应指定的位置即 移 ...
- oracle sysdba用户远程登录
sysdba远程登录需要两个条件: 1.remote_login_passwordfile =exclusive时,启用口令文件,允许远程登录: 查看remote_login_passwordfile ...
- bzoj3675: [Apio2014]序列分割
留坑 为什么别人家的斜率优化跟我一点都不一样! 为什么斜率都要变成正的... 为什么要那么推式子 为什么不能直接做啊..... 为什么不把0去掉去秒WA啊 为什么叉积去了0也过不了啊 woc啊 #in ...
- sql 视图 按where条件多个字段取一个 分类: SQL Server 2014-12-01 14:09 308人阅读 评论(0) 收藏
首先介绍一下 Case ..When...Then..End 的用法: CASEJiXiaoFind_RowID WHEN '1' THENJiXiao_Money1 WHEN '2' THEN ...
- 【Android - 框架】之Retrofit的使用
Retrofit是Square公司发布的一个可以应用在Android和Java中的Http客户端访问框架,其底层应用的是OkHttp. 在这个帖子中,我们以下面这个Http请求为例: https:// ...
- 源文件名和public 类名
问题: 源文件名和类名不一样 解决方法:将源文件的文件名test修改成Test
- Marquee滚动字幕设置(转)
<marquee >滚动文字 </marquee> 方向 <direction=#> #=left, right,up,down 方式<bihavior=#& ...