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 相关文章推荐
js 连接数据库如何操作数据库中的数据
Nov 23 Javascript
js报$ is not a function 的问题的解决方法
Jan 20 Javascript
Dojo Javascript 编程规范 规范自己的JavaScript书写
Oct 26 Javascript
JavaScript插件化开发教程 (三)
Jan 27 Javascript
谈谈基于iframe、FormData、FileReader三种无刷新上传文件的方法
Dec 03 Javascript
Mongoose学习全面理解(推荐)
Jan 21 Javascript
vue.js 使用v-if v-else发现没有执行解决办法
May 15 Javascript
Vue下拉框回显并默认选中随机问题
Sep 06 Javascript
Vue表单输入绑定的示例代码
Nov 01 Javascript
Vue.js样式动态绑定实现小结
Jan 24 Javascript
ES6 Symbol在对象中的作用实例分析
Jun 06 Javascript
Js类的构建与继承案例详解
Sep 15 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
php eval函数用法总结
2012/10/31 PHP
跟我学Laravel之配置Laravel
2014/10/15 PHP
js获取当前select 元素值的代码
2010/04/19 Javascript
为超链接加上disabled后的故事
2010/12/10 Javascript
javascript 学习笔记(一)DOM基本操作
2011/04/08 Javascript
关于hashchangebroker和statehashable的补充文档
2011/08/08 Javascript
jquery插件tytabs.jquery.min.js实现渐变TAB选项卡效果
2015/08/25 Javascript
jQuery中hover与mouseover和mouseout的区别分析
2015/12/24 Javascript
js与jquery分别实现tab标签页功能的方法
2016/11/18 Javascript
详解vue-cli快速构建项目以及引入bootstrap、jq
2017/05/26 Javascript
微信小程序之滚动视图容器的实现方法
2017/09/26 Javascript
pm2 部署 node的三种方法示例
2017/10/20 Javascript
js实现同一个页面,多个enter事件绑定的示例
2018/10/10 Javascript
微信小程序实现订单倒计时
2020/11/01 Javascript
vue webpack重写cookie路径的方法
2019/07/10 Javascript
快速解决layui弹窗按enter键不停弹窗的问题
2019/09/18 Javascript
Vue v-model组件封装(类似弹窗组件)
2020/01/08 Javascript
python中pygame针对游戏窗口的显示方法实例分析(附源码)
2015/11/11 Python
virtualenv实现多个版本Python共存
2017/08/21 Python
Django中反向生成models.py的实例讲解
2018/05/30 Python
python绘制散点图并标记序号的方法
2018/12/11 Python
深度辨析Python的eval()与exec()的方法
2019/03/26 Python
Python OpenCV 调用摄像头并截图保存功能的实现代码
2019/07/02 Python
seek引发的python文件读写的问题及解决
2019/07/26 Python
对pytorch中的梯度更新方法详解
2019/08/20 Python
Python 中 -m 的典型用法、原理解析与发展演变
2019/11/11 Python
TensorFlow实现打印每一层的输出
2020/01/21 Python
python中JWT用户认证的实现
2020/05/18 Python
Microsoft新加坡官方网站:购买微软最新软件和技术产品
2016/10/28 全球购物
英国袜子店:Sock Shop
2017/01/11 全球购物
德国排名第一的主题公园门票网站:Attraction Tickets Direct
2019/09/09 全球购物
英语文学专业学生的自我评价
2013/10/31 职场文书
小学教师师德承诺书
2014/05/23 职场文书
2014年小学校长工作总结
2014/12/08 职场文书
2014年妇幼保健工作总结
2014/12/08 职场文书
小学六年级班主任工作经验交流材料
2015/11/02 职场文书