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 相关文章推荐
FF IE浏览器修改标签透明度的方法
Jan 27 Javascript
javascript中的throttle和debounce浅析
Jun 06 Javascript
[将免费进行到底]在Amazon的一年免费服务器上安装Node.JS, NPM和OurJS博客
Aug 18 Javascript
jquery实现鼠标滑过小图时显示大图的方法
Jan 14 Javascript
Mac下使用charles遇到的问题以及解决办法
Jan 10 Javascript
js输入框使用正则表达式校验输入内容的实例
Feb 12 Javascript
angular 动态组件类型详解(四种组件类型)
Feb 22 Javascript
vue监听滚动事件实现滚动监听
Apr 11 Javascript
ExtJs异步无法向外传值和赋值的完美解决办法
Jun 14 Javascript
Angular排序实例详解
Jun 28 Javascript
详解redux异步操作实践
Aug 15 Javascript
jQuery实现的移动端图片缩放功能组件示例
May 01 jQuery
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
PHP开发入门教程之面向对象
2006/12/05 PHP
PHP操作文件方法问答
2007/03/16 PHP
PHP 多维数组的排序问题 根据二维数组中某个项排序
2011/11/09 PHP
PHP简单判断字符串是否包含另一个字符串的方法
2016/03/25 PHP
ie8 不支持new Date(2012-11-10)问题的解决方法
2013/07/31 Javascript
JS实现点击链接取消跳转效果的方法
2014/01/24 Javascript
js实例属性和原型属性示例详解
2014/11/23 Javascript
js和jquery实现监听键盘事件示例代码
2020/06/24 Javascript
jQuery EasyUI 右键菜单--关闭标签/选项卡的简单实例
2016/10/10 Javascript
浅谈React Native Flexbox布局(小结)
2018/01/08 Javascript
vue组件jsx语法的具体使用
2018/05/21 Javascript
使用elementUI实现将图片上传到本地的示例
2018/09/04 Javascript
通过实例学习React中事件节流防抖
2019/06/17 Javascript
vue+render+jsx实现可编辑动态多级表头table的实例代码
2020/04/01 Javascript
[44:40]Serenity vs Pain 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
[02:06]2018完美世界全国高校联赛秋季赛开始报名(附彩蛋)
2018/09/03 DOTA
python小技巧之批量抓取美女图片
2014/06/06 Python
Python中的一些陷阱与技巧小结
2015/07/10 Python
Python连接MySQL并使用fetchall()方法过滤特殊字符
2016/03/13 Python
Python实现将sqlite数据库导出转成Excel(xls)表的方法
2017/07/17 Python
Flask 让jsonify返回的json串支持中文显示的方法
2018/03/26 Python
python实现对指定输入的字符串逆序输出的6种方法
2018/04/26 Python
解决seaborn在pycharm中绘图不出图的问题
2018/05/24 Python
浅析python中numpy包中的argsort函数的使用
2018/08/30 Python
Python基础教程之if判断,while循环,循环嵌套
2019/04/25 Python
keras获得model中某一层的某一个Tensor的输出维度教程
2020/01/24 Python
Python+appium框架原生代码实现App自动化测试详解
2020/03/06 Python
Python3-异步进程回调函数(callback())介绍
2020/05/02 Python
Marlies Dekkers内衣法国官方网上商店:国际知名的荷兰内衣品牌
2019/03/18 全球购物
金士达面试非笔试
2012/03/14 面试题
食堂个人先进事迹
2014/01/22 职场文书
大学计划书范文800字
2014/08/14 职场文书
2014年电教工作总结
2014/12/19 职场文书
七一建党节慰问信
2015/02/14 职场文书
小学生安全教育主题班会
2015/08/12 职场文书
教师网络培训心得体会
2016/01/09 职场文书