javascript中的取反再取反~~没有意义


Posted in Javascript onApril 06, 2014

操作符~, 是按位取反的意思,表面上~~(取反再取反)没有意义,实际上在JS中可以将浮点数变成整数。

<html> 
<script> 
var myArray = new Array(); 
myArray.push("a"); 
myArray.push("b"); 
myArray.push("c"); 
myArray.push("d"); //现在要随机从数组中取出一个元素 
var random = myArray[~~(Math.random()*myArray.length)]; //Math.random()返回0和1之间的伪随机数,可能为0,但总是小于1,[0,1) 
var i = 7.94; 
i = ~~i; 
alert(i); 
var j = 7.34; 
j = ~~j; 
alert(j); 
</script> 
</html>

如上,如果没有~~,那么随机得到的是小数,而且是将小数的小数部分去掉,保留整数。如上面i=7,j=7。然而在C中并不存在这种机制,C中对一个浮点数(float)是不能按位取反的,而且C中可以用强制类型转换(而JS中则没有这种机制,浮点数转整数)达到同样的目的(舍弃小数部分,保留整数部分)。
javascript中的取反再取反~~没有意义
Javascript 相关文章推荐
FLASH 广告之外的链接
Dec 16 Javascript
捕获浏览器关闭、刷新事件不同情况下的处理方法
Jun 02 Javascript
jquery 无限级下拉菜单的简单实现代码
Feb 21 Javascript
js数值和和字符串进行转换时可以对不同进制进行操作
Mar 05 Javascript
jQuery获取checkbox选中的值
Jan 28 Javascript
jQuery中的AjaxSubmit使用讲解
Sep 25 Javascript
jQuery实现拼图小游戏(实例讲解)
Jul 24 jQuery
javascript基本常用排序算法解析
Sep 27 Javascript
jQuery响应滚动条事件功能示例
Oct 14 jQuery
基于js中this和event 的区别(详解)
Oct 24 Javascript
基于jQuery的$.getScript方法去加载javaScript文档解析
Nov 08 jQuery
微信小程序-API接口安全详解
Jul 16 Javascript
jQuery toggleClass应用实例(附效果图)
Apr 06 #Javascript
javascript数组操作总结和属性、方法介绍
Apr 05 #Javascript
JavaScript中的prototype和constructor简明总结
Apr 05 #Javascript
JavaScript中的typeof操作符用法实例
Apr 05 #Javascript
Javascript排序算法之计数排序的实例
Apr 05 #Javascript
JavaScript中的正则表达式简明总结
Apr 04 #Javascript
JavaScript格式化日期时间的方法和自定义格式化函数示例
Apr 04 #Javascript
You might like
用ODBC的分页显示
2006/10/09 PHP
php preg_replace替换实例讲解
2013/11/04 PHP
PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法
2014/05/10 PHP
基于Laravel5.4实现多字段登录功能方法示例
2017/08/11 PHP
Laravel下生成验证码的类
2017/11/15 PHP
Thinkphp 5.0实现微信企业付款到零钱
2018/09/30 PHP
jQuery 使用手册(三)
2009/09/23 Javascript
使用JavaScript检测Firefox浏览器是否启用了Firebug的代码
2010/12/28 Javascript
jQuery 复合选择器应用的几个例子
2014/09/11 Javascript
基于jquery插件编写countdown计时器
2016/06/12 Javascript
基于vue的fullpage.js单页滚动插件
2017/03/20 Javascript
ES6 新增的创建数组的方法(小结)
2019/08/01 Javascript
JS XMLHttpRequest原理与使用方法深入详解
2020/04/30 Javascript
详解vue实现坐标拾取器功能示例
2020/11/18 Vue.js
精确查找PHP WEBSHELL木马的方法(1)
2011/04/12 Python
python操作gmail实例
2015/01/14 Python
Python基于pygame实现图片代替鼠标移动效果
2015/11/11 Python
Python如何实现守护进程的方法示例
2017/02/08 Python
Python批量合并有合并单元格的Excel文件详解
2018/04/05 Python
Python3实现汉语转换为汉语拼音
2019/07/08 Python
python 上下文管理器及自定义原理解析
2019/11/19 Python
python字典setdefault方法和get方法使用实例
2019/12/25 Python
tensorboard实现同时显示训练曲线和测试曲线
2020/01/21 Python
tensorflow 自定义损失函数示例代码
2020/02/05 Python
Python通过format函数格式化显示值
2020/10/17 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
施华洛世奇天猫官方旗舰店:SWAROVSKI
2017/04/17 全球购物
世界上最好的儿童品牌:AlexandAlexa
2018/01/27 全球购物
巴西补充剂和维生素购物网站:Natue
2019/06/17 全球购物
公司营业员的自我评价
2014/03/04 职场文书
询价采购方案
2014/06/09 职场文书
美术社团活动总结
2014/06/27 职场文书
2014年教育工作总结
2014/11/26 职场文书
Python基于Opencv识别两张相似图片
2021/04/25 Python
Python网络编程之ZeroMQ知识总结
2021/04/25 Python
Python 中random 库的详细使用
2021/06/03 Python