JavaScript中的比较操作符>、=、


Posted in Javascript onDecember 31, 2014

与==操作符一样,比较操作符(>、<、>=、<=)可以将对象转换成string或者number后再进行比较 -- 对于number,比较值的大小;对于string,则比较字符在编码表中出现的次序。与==操作符不一样的是,==会将Date对象优先转换成string后再加以比较,而比较操作符则会对包括Date在内的所有对象优先转换成number后再加以比较。其比较判断的规则如下:

1.操作符两边如果有对象,将其转换成number;如果无法转换成number,则将其转换成string。
2.经过转换后,如果操作符两边均为string,则进行字符串比较;否则,只要有一边出现number,则进行数值比较。
3.如果操作符两边出现NaN,返回false。
4.0与-0相等。

实验

//In comparison, Date object is converted to number

var d = new Date();

var s1 = "Thu Mar 27 2008 14:57:11 GMT+0800 (CST)";

var s2 = "Thu Mar 27 2099 14:57:11 GMT+0800 (CST)";

var n1 = d.valueOf() - 1000;

var n2 = d.valueOf() + 1000;

console.log(d > s1);//false, d is converted to number, and that number is further converted to string. It is a string comparison here.

console.log(d > s2);//false

console.log(d > n1);//true

console.log(d > n2);//false
console.log("11" > 3);//true
Javascript 相关文章推荐
jquery 插件 web2.0分格的分页脚本,可用于ajax无刷新分页
Dec 25 Javascript
javascript 判断数组是否已包含了某个元素的函数
May 30 Javascript
JS面向对象编程之对象使用分析
Aug 19 Javascript
JQUERY 设置SELECT选中项代码
Feb 07 Javascript
JavaScript判断变量是对象还是数组的方法
Aug 28 Javascript
javascript实现五星评分功能
Nov 10 Javascript
使用jquery如何获取时间
Oct 13 Javascript
jQuery日期范围选择器附源码下载
May 23 jQuery
webpack4+Vue搭建自己的Vue-cli项目过程分享
Aug 29 Javascript
Jquery的autocomplete插件用法及参数讲解
Mar 12 jQuery
微信小程序调用后台service教程详解
Nov 06 Javascript
js异步接口并发数量控制的方法示例
Nov 22 Javascript
javascript 操作符(~、&amp;、|、^、)使用案例
Dec 31 #Javascript
JavaScript中的逻辑判断符&amp;&amp;、||与!介绍
Dec 31 #Javascript
JavaScript中的eval()函数使用介绍
Dec 31 #Javascript
JSONP跨域GET请求解决Ajax跨域访问问题
Dec 31 #Javascript
JavaScript中的异常捕捉介绍
Dec 31 #Javascript
JavaScript中对象介绍
Dec 31 #Javascript
JavaScript中用字面量创建对象介绍
Dec 31 #Javascript
You might like
在windows iis5下安装php4.0+mysql之我见
2006/10/09 PHP
PHP如何得到当前页和上一页的地址?
2006/11/27 PHP
简单的PHP图片上传程序
2008/03/27 PHP
PHP DataGrid 实现代码
2009/08/12 PHP
浅析Yii2 GridView实现下拉搜索教程
2016/04/22 PHP
php微信开发之自定义菜单完整流程
2016/10/08 PHP
ThinkPHP3.1.x修改成功与失败跳转页面的方法
2017/09/29 PHP
jquery自动填充勾选框即把勾选框打上true
2014/03/24 Javascript
三种方式获取XMLHttpRequest对象
2014/04/21 Javascript
javascript实现十六进制颜色值(HEX)和RGB格式相互转换
2014/06/20 Javascript
js兼容火狐显示上传图片预览效果的方法
2015/05/21 Javascript
实例讲解JavaScript的Backbone.js框架中的View视图
2016/05/05 Javascript
jQuery实现遮罩层登录对话框
2016/12/29 Javascript
详解JavaScript树结构
2017/01/09 Javascript
详解微信小程序设置底部导航栏目方法
2017/06/29 Javascript
js制作简单的音乐播放器的示例代码
2017/08/28 Javascript
微信小程序 scroll-view实现锚点滑动的示例
2017/12/06 Javascript
Angular实现的敏感文字自动过滤与提示功能示例
2017/12/29 Javascript
Vue.js获取被选择的option的value和text值方法
2018/08/24 Javascript
在Vue 中获取下拉框的文本及选项值操作
2020/08/13 Javascript
python获取文件扩展名的方法
2015/07/06 Python
Python实现决策树并且使用Graphviz可视化的例子
2019/08/09 Python
使用OpenCV实现仿射变换—平移功能
2019/08/29 Python
Python列表倒序输出及其效率详解
2020/03/04 Python
Python字符串split及rsplit方法原理详解
2020/06/29 Python
在HTML5 canvas里用卷积核进行图像处理的方法
2018/05/02 HTML / CSS
HTML5 Canvas自定义圆角矩形与虚线示例代码
2013/08/02 HTML / CSS
泰国汽车、火车和轮渡票预订网站:Bus Online Ticket
2017/09/09 全球购物
我有一个char * 型指针正巧指向一些int 型变量, 我想跳过它们。 为什么如下的代码((int *)p)++; 不行?
2013/05/09 面试题
化学相关工作求职信
2013/10/02 职场文书
升职自荐书范文
2013/11/28 职场文书
大学生开西餐厅创业计划书
2014/02/01 职场文书
2014年政风行风评议工作总结
2014/10/21 职场文书
党校个人总结
2015/03/04 职场文书
人事聘任通知
2015/04/21 职场文书
Python函数式编程中itertools模块详解
2021/09/15 Python