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 相关文章推荐
JavaScript高级程序设计
Dec 29 Javascript
使用PHP+JQuery+Ajax分页的实现
Apr 23 Javascript
Javascript中的高阶函数介绍
Mar 15 Javascript
浅谈$(document)和$(window)的区别
Jul 15 Javascript
详解JavaScript函数
Dec 01 Javascript
详解Node.js如何开发命令行工具
Aug 14 Javascript
如何利用JQuery实现从底部回到顶部的功能
Dec 27 Javascript
微信小程序本作用域下调用全局JS详解及实例
Feb 22 Javascript
js手机号4位显示空格,银行卡每4位显示空格效果
Mar 23 Javascript
详解Vuex中mapState的具体用法
Sep 28 Javascript
微信小程序开发之路由切换页面重定向问题
Sep 18 Javascript
Node.js API详解之 vm模块用法实例分析
May 27 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
社区(php&amp;&amp;mysql)五
2006/10/09 PHP
PHP中for与foreach的区别分析
2011/03/09 PHP
VIM中设置php自动缩进为4个空格的方法详解
2013/06/14 PHP
ThinkPHP表单自动提交验证实例教程
2014/07/18 PHP
PHP registerXPathNamespace()函数讲解
2019/02/03 PHP
PHP实现微信公众号验证Token的示例代码
2019/12/16 PHP
PHP并发场景的三种解决方案代码实例
2021/02/27 PHP
深入理解JavaScript系列(10) JavaScript核心(晋级高手必读篇)
2012/01/15 Javascript
Javascript控制页面链接在新窗口打开具体方法
2013/08/16 Javascript
JavaScript通过this变量快速找出用户选中radio按钮的方法
2015/03/23 Javascript
微信小程序 页面跳转和数据传递实例详解
2017/01/19 Javascript
jQuery、layer实现弹出层的打开、关闭功能
2017/06/28 jQuery
Nodejs进阶之服务端字符编解码和乱码处理
2017/09/04 NodeJs
JavaScript获取移动设备型号的实现代码(JS获取手机型号和系统)
2018/03/10 Javascript
基于jQuery使用Ajax动态执行模糊查询功能
2018/07/05 jQuery
vue.js实现图书管理功能
2019/09/24 Javascript
详细分析Node.js 多进程
2020/06/22 Javascript
如何使用 JavaScript 操作浏览器历史记录 API
2020/11/24 Javascript
python求斐波那契数列示例分享
2014/02/14 Python
python中的多线程实例教程
2014/08/27 Python
Python获取电脑硬件信息及状态的实现方法
2014/08/29 Python
简单介绍Python中的len()函数的使用
2015/04/07 Python
在GitHub Pages上使用Pelican搭建博客的教程
2015/04/25 Python
python pexpect ssh 远程登录服务器的方法
2019/02/14 Python
python如何实现从视频中提取每秒图片
2020/10/22 Python
学python安装的软件总结
2019/10/12 Python
python 动态调用函数实例解析
2019/10/21 Python
pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解
2020/01/03 Python
田径运动会开幕式及主持词
2014/03/28 职场文书
双方协议书
2014/04/22 职场文书
女生节标语
2014/06/26 职场文书
大学竞选班干部演讲稿
2014/08/21 职场文书
挂职锻炼工作总结2015
2015/05/28 职场文书
紫日观后感
2015/06/05 职场文书
JavaScript实现登录窗体
2021/06/22 Javascript
Axios代理配置及封装响应拦截处理方式
2022/04/07 Vue.js