Javascript 按位与赋值运算符 (&=)使用介绍


Posted in Javascript onFebruary 04, 2014

Javascript 按位与赋值运算符 (&=),对变量值与表达式值设置按位“与”运算的结果。 变量和表达式均被视为 32 位二进制值,而一般表达式里面都是十进制整数,此时需要先转换成对应的二进制,然后向前加0,补足32位。

result &= 【整数2】
等价于
result = result & 【整数2】

& 对两个 32 位表达式的每一个位执行按位“与”运算。 如果两个位均为 1,则结果是 1。 否则,结果为 0。

位1 位2 位与
0 0 0
1 1 1
0 1 0
1 0 0

下面的示例演示如何使用 & 位与运算符 和 &= 按位与赋值运算符:

// 9 二进制是 1001,补足32位为 00000000000000000000000000001001
var expr1 = 9;
// 5 是 00000000000000000000000000000101
var expr2 = 5;
/*
00000000000000000000000000001001
&
00000000000000000000000000000101
=
00000000000000000000000000000001
=
1
*/
var result = expr1 & expr2;
alert(result);
// 弹出【1】
expr1 &= expr2;
alert(expr1);
// 弹出【1】

JavaScript赋值运算符与表达式

JavaScript赋值运算符负责为变量赋值,JavaScript赋值运算符包括=,+=,-=,*=,/=,%=
用赋值运算符和运算对象(操作数)连接起来,符合规则的JavaScript语法的式子,称JavaScript赋值表达式。

JavaScript赋值运算符与赋值表达式语法

var i+=a;

+= -- 赋值运算符
上面表达式的意义是:把i加上a所得的值,赋予变量i。

JavaScript赋值运算符与赋值表达式

运算符 = += -= *= /= %=
名称 赋值运算符 加法赋值运算符 减法赋值运算符 乘法赋值运算符 除法赋值运算符 模赋值运算符(求余赋值运算符)
表达式 i=6 i+=5 i-=5 i*=5 i/=5 i%=5
示例 var i=6; i+=5; i-=5; i*=5; i/=5; i%=5;
i的结果 6 11 1 30 1.2 1
等价于   i=i+5; i=i-5; i=i*5; i=i/5; i=i%5;

示例解释

前自增运算符与后自增运算符有本质的区别,它们的相同点都是为自身加了1,不同点是前自增运算符是先加1,再使用操作数的值,后自增运算符是先使用操作数的值,再加1。例如:

var a; 
var i=6; //(前加加)i加1后,i等于7,并将i值赋予a,于是a等于7 
a=++i; 
document.write(i); 
document.write(a); 
i=6; 
//(后加加)将i值赋予a,于是a等于6,最后i加1,i等于7 
a=i++; 
document.write(i); 
document.write(a);

结果:

7 
7 
7 
6
Javascript 相关文章推荐
初识JQuery 实例一(first)
Mar 16 Javascript
妙用Jquery的val()方法
Jun 27 Javascript
Node.js中安全调用系统命令的方法(避免注入安全漏洞)
Dec 05 Javascript
JavaScript中的类(Class)详细介绍
Dec 30 Javascript
最丑的时钟效果!js canvas时钟制作方法
Aug 15 Javascript
JavaScript实现Java中Map容器的方法
Oct 09 Javascript
JavaScript注入漏洞的原理及防范(详解)
Dec 04 Javascript
详解vue组件化开发-vuex状态管理库
Apr 10 Javascript
jQuery回调方法使用示例
Jun 26 jQuery
前端防止用户重复提交js实现代码示例
Sep 07 Javascript
Vue 实现前端权限控制的示例代码
Jul 09 Javascript
JavaScript实现切换多张图片
Jan 27 Javascript
Javascript 按位左移运算符使用介绍(
Feb 04 #Javascript
JavaScript按位运算符的应用简析
Feb 04 #Javascript
Javascript 按位取反运算符 (~)
Feb 04 #Javascript
jQuery操作CheckBox的方法介绍(选中,取消,取值)
Feb 04 #Javascript
jquery操作复选框(checkbox)的12个小技巧总结
Feb 04 #Javascript
jquery 获取dom固定元素 添加样式的简单实例
Feb 04 #Javascript
jquery判断元素的子元素是否存在的示例代码
Feb 04 #Javascript
You might like
Eclipse的PHP插件PHPEclipse安装和使用
2014/07/20 PHP
php设置静态内容缓存时间的方法
2014/12/01 PHP
php compact 通过变量创建数组
2016/11/15 PHP
Laravel定时任务的每秒执行代码
2019/10/22 PHP
ExtJS 2.0实用简明教程 之Ext类库简介
2009/04/29 Javascript
jQuery实现动画效果的简单实例
2014/01/27 Javascript
基于编写jQuery的无缝滚动插件
2014/08/02 Javascript
使用jQuery设置disabled属性与移除disabled属性
2014/08/21 Javascript
javascript实现复制与粘贴操作实例
2014/10/16 Javascript
thinkphp 表名 大小写 窍门
2015/02/01 Javascript
javascript引用类型之时间Date和数组Array
2015/08/27 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
2016/02/12 Javascript
JS & JQuery 动态添加 select option
2016/06/08 Javascript
bootstrap modal弹出框的垂直居中
2016/12/14 Javascript
AngularJS 使用ng-repeat报错 [ngRepeat:dupes]
2017/01/19 Javascript
JavaScript简单拖拽效果(1)
2017/05/17 Javascript
vue2.0中click点击当前li实现动态切换class
2017/06/21 Javascript
VUE利用vuex模拟实现新闻点赞功能实例
2017/06/28 Javascript
AngularJS select设置默认值的实现方法
2017/08/25 Javascript
移动端效果之Swiper详解
2017/10/09 Javascript
网页爬虫之cookie自动获取及过期自动更新的实现方法
2018/03/06 Javascript
利用React Router4实现的服务端直出渲染(SSR)
2019/01/07 Javascript
Vue项目打包部署到iis服务器的配置方法
2019/10/14 Javascript
Vue中通过属性绑定为元素绑定style行内样式的实例代码
2020/04/30 Javascript
python绘制中国大陆人口热力图
2018/11/07 Python
通过pykafka接收Kafka消息队列的方法
2018/12/27 Python
python pandas库的安装和创建
2019/01/10 Python
html5配合css3实现带提示文字的输入框(摆脱js)
2013/03/08 HTML / CSS
工商局副局长个人对照检查材料
2014/09/25 职场文书
三国演义读书笔记
2015/06/25 职场文书
教师节感想
2015/08/11 职场文书
2019最新激励员工口号大全!
2019/06/28 职场文书
哪类餐饮行业,最适合在高校创业?
2019/08/19 职场文书
Matplotlib可视化之添加让统计图变得简单易懂的注释
2021/06/11 Python
解析redis hash应用场景和常用命令
2021/08/04 Redis
MySQL之select、distinct、limit的使用
2021/11/11 MySQL