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学习笔记之控制页面实现代码
Feb 27 Javascript
javascript操作css属性
Dec 30 Javascript
jQuery之选项卡的简单实现
Feb 28 Javascript
js 操作符汇总
Nov 08 Javascript
javascript拖拽效果延伸学习
Apr 04 Javascript
Bootstrap栅格系统使用方法及页面调整变形的解决方法
Mar 10 Javascript
Js利用Canvas实现图片压缩功能
Sep 13 Javascript
微信小程序实现图片上传、删除和预览功能的方法
Dec 18 Javascript
详解如何构建一个Angular6的第三方npm包
Sep 07 Javascript
Bootstrap 时间日历插件bootstrap-datetimepicker配置与应用小结
May 28 Javascript
vue element自定义表单验证请求后端接口验证
Dec 11 Javascript
原生JS生成指定位数的验证码
Oct 28 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
Terran剧情介绍
2020/03/14 星际争霸
PHP统计目录下的文件总数及代码行数(去除注释及空行)
2011/01/17 PHP
基于Snoopy的PHP近似完美获取网站编码的代码
2011/10/23 PHP
基于PHP编程注意事项的小结
2013/04/27 PHP
PHP三元运算的2种写法代码实例
2014/05/12 PHP
Laravel 5框架学习之Laravel入门和新建项目
2015/04/07 PHP
PHP中文竖排转换实现方法
2015/10/23 PHP
Laravel下生成验证码的类
2017/11/15 PHP
常用js脚本
2006/12/03 Javascript
JCalendar 日历控件 v1.0 beta[兼容IE&Firefox] 有文档和例子
2007/05/30 Javascript
myFocus slide3D v1.1.0 使用方法与下载
2011/01/12 Javascript
JQuery扩展插件Validate 5添加自定义验证方法
2011/09/05 Javascript
前端开发过程中浏览器版本的两种判定方法
2013/10/30 Javascript
JavaScript中按位“异或”运算符使用介绍
2014/03/14 Javascript
利用javascript实现全部删或清空所选的操作
2014/05/27 Javascript
JavaScript监听和禁用浏览器回车事件实例
2015/01/31 Javascript
使用jQuery在移动页面上添加按钮和给按钮添加图标
2015/12/04 Javascript
js实现仿qq消息的弹出窗效果
2016/01/06 Javascript
EasyUI在表单提交之前进行验证的实例代码
2016/06/24 Javascript
javascript的几种写法总结
2016/09/30 Javascript
js 获取今天以及过去日期
2017/04/11 Javascript
javascript实现QQ空间相册展示源码
2017/12/12 Javascript
js+css实现打字效果
2020/06/24 Javascript
jQuery实现的中英文切换功能示例
2019/01/11 jQuery
Bootstrap 时间日历插件bootstrap-datetimepicker配置与应用小结
2019/05/28 Javascript
django中使用vue.js的要点总结
2019/07/07 Javascript
vue 子组件watch监听不到prop的解决
2020/08/09 Javascript
vue绑定class的三种方法
2020/12/24 Vue.js
Python二维码生成识别实例详解
2019/07/16 Python
python递归法解决棋盘分割问题
2019/07/17 Python
python命名空间(namespace)简单介绍
2019/08/10 Python
python opencv根据颜色进行目标检测的方法示例
2020/01/15 Python
给老婆的保证书范文
2014/04/28 职场文书
销售员未完成销售业绩的检讨书
2014/10/12 职场文书
2015年大学班长个人工作总结
2015/04/24 职场文书
2016年“11.11”光棍节活动总结
2016/04/05 职场文书