js ~~符号是什么意思?? 5
{d:tatris[~~(Math.random()*7)],s:~~(Math.random()*4)};其中~~这个是什么意思?这整句话是什么意思??...
{d:tatris[~~(Math.random()*7)],s:~~(Math.random()*4)};
其中~~ 这个是什么意思?这整句话是什么意思?? 展开
其中~~ 这个是什么意思?这整句话是什么意思?? 展开
展开全部
~是按位取反运算,~~是取反两次。
~~的作用是去掉小数部分,因为位运算的操作值要求是整数,其结果也是整数,所以经过位运算的都会自动变成整数。
例如:
按位取反
如 unsigned char a=1;
二进制为 00000001
a=~a;
现在二进制为11111110
扩展资料:
注意事项
~对操作数按位取反,两个的意思即作两次取反操作,其实是等作原数本身(操作数是32整数范围内)
~~(Math.random()*7)
即:
var n = Math.random() * 7;
n = ~n;
n = ~n;//其实和初始值一样
和对BOOLEAN类型的作两次,操作是一个意思,只不过是把小数位给去掉了。
推荐用>>操作符,一次即可:
var n = Math.random() * 7;
n = n>>0;
展开全部
~是按位取反运算,~~是取反两次
在这里~~的作用是去掉小数部分
因为位运算的操作值要求是整数,其结果也是整数,所以经过位运算的都会自动变成整数
除了~~n 还可以用
n<<0
n>>0
n|0
取整
与Math.floor()不同的是,它只是单纯的去掉小数部分,不论正负都不会改变整数部分
在这里~~的作用是去掉小数部分
因为位运算的操作值要求是整数,其结果也是整数,所以经过位运算的都会自动变成整数
除了~~n 还可以用
n<<0
n>>0
n|0
取整
与Math.floor()不同的是,它只是单纯的去掉小数部分,不论正负都不会改变整数部分
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
实际上在JS中可以将浮点数变成整数。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询