JS的递增/递减运算符和带操作的赋值运算符的等价式

1.递增/递减运算符等价式

a=b++; <=> a=b;b=b+1;
a=++b; <=> b=b+1;b=b;
a=b--;   <=> a=b;b=b-1;
a=--b;   <=> b=b-1;b=b;

所以,a=5;b=6;var3=a++*--b,结果为25

2.带操作的赋值运算符等价式

a*=b;  <=> a=a*b;
a/=b;   <=> a=a/b;
a+=b;  <=> a=a+b;
a-=b;   <=> a=a-b;
a%=b; <=> a=a%b;
a&=b;  <=> a=a&b; //从&=开始,下边都是逐位运算符
a|=b;   <=> a=a|b;
a^=b;  <=> a=a^b;
a>>=b;  <=> a=a>>b;
a<<=b;  <=> a=a<<b;
a>>>=b;  <=> a=a>>b; //C#没有此运算符

(0)

相关推荐

  • 用javascript对一个json数组深度赋值示例

    <!DOCTYPE HTML> <html> <head> <title>test1</title> </head> <body> <script> var arr={ "name":"zhansan", "age":23, "address":{ "city":"beijing", &quo

  • JS数组的赋值介绍

    复制代码 代码如下: var test=[1,2,3,4,5,6,7]; var arr=test;arr.splice(2,1);alert(test);//1,2,4,5,6,7 JS数组实质上是对象.因此,上面的源代码最后打印出的是1,2,3,4,5,6.这是因为将test赋值给arr实际上是将数组的引用赋值给arr,所以操作arr也同时会 改变源数组. 要实现数组克隆,可用以下方法: 复制代码 代码如下: Array.prototype.clone=function(){   retur

  • javascript实现连续赋值

    最近项目接触,时间比较充足,到网上逛逛了逛无意中在网上发现了这个问题,预知的结果和真实结果相差太大. 请看下面代码 var a={n:1} var b=a; a.x=a={n:2} console.log(a.x); console.log(b.x); undefined Object{n:2} 如果把代码拆开来看,结果就是我们所想的那样 var a={n:1} var b=a; a={n:2}: a.x={n:2} console.log(a.x);//Object{n:2} console.

  • js给onclick事件赋值,动态传参数实例解说

    我们先看看错误的例子 Html代码 复制代码 代码如下: <body> <input id="certid" type="text" value="123456" > <input id="btn" type="button" value="button" onclick=""> </body> Javascript代码

  • JS子父窗口互相操作取值赋值的方法介绍

    $("#父窗口元素ID",window.parent.document); 对应javascript版本为window.parent.document.getElementByIdx_x("父窗口元素ID"): 取父窗口的元素方法:$(selector, window.parent.document);那么你取父窗口的父窗口的元素就可以用:$(selector, window.parent.parent.document); 类似的,取其它窗口的方法大同小异$(se

  • php中给js数组赋值方法

    因为接口方的要求,用js中处理数据,所以需要php程序从数据库取出数值后赋值给js数组.一直没有找到很好的办法,因为PHP数组的数据编码和JS 数组的编码格式不一样,不能直接输出. 在网上搜索一通后,找到的解决的方法: PHP函数库提供了编/解码JSON的函数:json_encode()和json_decode(),可以比较方便的传递数组或对象给javascript.注意:PHP 5.2以上才绑定了JSON扩展. 在php如下写: 复制代码 代码如下: $arr = array('1',arra

  • JS动态创建Table,Tr,Td并赋值的具体实现

    成果库修改:      要求主题列表随成果类型改变而改变      网上查询资料后开工,在成果类型下拉框添加change()事件触发Dwr,查询主题集合--动态创建/编辑Table      概要代码如下:JS  复制代码 代码如下: //动态获取主题数据 function getzts(){     parentId = document.getElementById("bselect1").value;     if(parentId!=""){        

  • js操作label给label赋值及取label的值示例

    取值:var Label_text=document.getElementById('test_label').innerHTML; 赋值:document.getElementById('test_label').innerHTML = ids;

  • 一段批量给页面上的控件赋值js

    复制代码 代码如下: function SetFormValue(column,values) { var elem; for(var m=0;m<column.length;m++) { var tempValue=column[m]; elem=null; elem=document.getElementById(tempValue); if(elem==null) { //如果没有对应的控件,则跳过本次循环 continue; } var trueValue=eval("values

  • JS模拟面向对象全解(二、类型与赋值)

    类型赋值类似变量传递的问题. 基本数据类型不必说,传值的. 复制代码 代码如下: var a=5; var b=a; b=3; alert(a);//提示5 alert(b);//提示3 由此观之,发现改变b不会改变a,因为都是变量的值在来回传递,和变量本身没有关系. 对象类型,传址的. 复制代码 代码如下: var a=new Object(); a.x=5; var b=a; b.x=3; alert(a.x);//提示3 alert(b.x);//提示3 这样,由于传址,所以b即是a,a即

随机推荐