JS中的“==”符号及布尔值转换规则
what are the rules for how == converts types?
关于"=="的比较规则:
1. Comparing numbers and strings will always convert the strings to numbers.
number类型与string类型比较,string会转换为number类型。如:2=="2" true
2. null and undefined will always equal each other.
null类型与undefined类型比较始终相等。如:var a = null,b; 则 a==b 为true。
3. Comparing booleans to any other type will always cause the booleans to be converted to numbers.
布尔类型与其他任何类型进行比较,布尔类型将会转换为number类型。如:var a = 0, b = false;则a==b为true
4. Comparing numbers or strings to objects will always cause the numbers or strings to be converted to objects.
number类型或者string类型与object类型进行比较,number或者string类型都会转换为object类型。如:var a = 0, b = {};则a==b为false
The rules for converting other types to booleans are actually relatively straightforward:
关于其他类型转换为布尔类型的规则:
1. undefined and null are always false.
2. Booleans are just treated as booleans (obviously).
3. Numbers are false if they equal 0 or NaN; otherwise, they’re true.
4. Strings are true, except for the empty string "", which is false.
5. Objects are always true.
JS中的“==”符号及布尔值转换规则的更多相关文章
- js中获取css样式属性值
关于js中style,currentStyle和getComputedStyle几个注意的地方 (1)用js的style只能获取元素的内联样式,内部样式和外部样式使用style是获取不到的.针对css ...
- 在js中取选中的radio值
在js中取选中的radio值 <input type="radio" name="address" value="0" /> & ...
- js中的$符号代表什么
js中的$符号代表什么 一.总结 1.$:相当于document.getElementById(...) 2.$常用用法:每句话意思下面有,好东西 $("div p"); // ( ...
- php与js中函数参数的默认值设置
php函数参数默认值设置: <?phpfunction test($val=3){ echo $val."<br/>";}test(11);test();?& ...
- js中switch/case分支的值可以是变量或表达式
在一些高级语言如C#中,switch分支的值只能是常量,而js中可以是变量或表达式: <!DOCTYPE html> <html lang="en"> &l ...
- js中全局变量修改后的值不生效【jsp页面中各个js中内容的加载顺序】
一个老项目中,一个jsp文件中有很多个js文件, 现在要在页面上的一个地方判断一个状态,因为一直找不到原来是在哪里修改的那个状态,所以决定不找了,而是在比较靠前引入的一个js中定义一个全局变量,然后在 ...
- js面试题--------JS中数字和字符,布尔类型相加相减问题
JS中数字和字符相加相减问题 <html lang="en"> <head> <meta charset="utf-8" /> ...
- js中逻辑运算符||和&& 的返回值并不只有true和false
以前我一直认为逻辑运算符的返回值一直是true或者false,其实根本就没考虑过它又返回值,一直是在if判断语句中作为一个条件使用,只是为了能让条件正确与否进入if语句.根本就没用到逻辑运算符的返回值 ...
- 关于js中直接获取后台的值,直接弹窗获取到的值
js里获取后台的值,以前我都是后台通过jsp中的<input>EL表达式: 后台代码把传向页面的值放入request:request.setAttribute("Success& ...
随机推荐
- javascript中对条件判断语句的优化 分类: JavaScript 2015-06-07 09:54 832人阅读 评论(2) 收藏
不管写什么程序,平时都会用到条件语句,如:if...else... switch这样的语句,来达到对条件的判断.下面看来一段代码: function abc(test){ if (test == 1) ...
- 全网最详细的Windows系统里Oracle 11g R2 Database(64bit)安装后的初步使用(图文详解)
不多说,直接上干货! 前期博客 全网最详细的Windows系统里Oracle 11g R2 Database(64bit)的下载与安装(图文详解) 命令行方式测试安装是否成功 1) 打开服务(cm ...
- 第一次项目上Linux服务器(五:CentOS7下Mysql数据库的安装与配置(转))
好像在CentOS 7系统中,默认安装的mysql是它的分支mariadb.所以不能像CentOS-6.3那样安装,如下: [root@izwz ~]# yum -y install mysql my ...
- C# Azure 用Webhook添加警报规则
本篇文章的目的是什么? Azure云端一直困扰着我的是,如果遇到数据库累积数据量过大.数据库DTU过大.应用程序服务访问量过大等,我们都没办法知道他们什么时候过大.只能做的是,我们天天看着我们的应用, ...
- maven国内aliyun镜像
打开maven安装目录下conf文件夹的settings.xml文件 配置本地仓库 <localRepository>D:/maven/repository</localReposi ...
- Excel核心技巧【干货】
进入职场后发现,几乎有很大一部分时间都耗在了表格上. Excel的存在是为了更高效工作,但庞大的数据处理却成了你每晚加班的“凶手”? 其实,从数据整理到数据分析,只要掌握20%的Excel技巧,就足以 ...
- [android] 帧动画和补间动画
逐帧显示一张图片,连起来成为动画 在res/drawable/目录下,创建一个xxx.xml的文件 添加<animation-list>节点,设置是否循环android:oneshot:” ...
- 【Java基础】8、java中的native方法
native是与C++联合开发的时候用的!java自己开发不用的! 使用native关键字说明这个方法是原生函数,也就是这个方法是用C/C++语言实现的,并且被编译成了DLL,由java去调用.这些函 ...
- First Date (hnoj12952)日期计算
First Date Time Limit: 3000ms, Special Time Limit:7500ms, Memory Limit:65536KB Total submit users: 7 ...
- A simple Gaussian elimination problem.(hdu4975)网络流+最大流
A simple Gaussian elimination problem. Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65 ...