5-3不明白
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ++和--的运算</title> </head> <body> <script> //代码补充 var a=4, b=5, g=a++, h=--b, c=(a++)+(--b), d=(a++)-(--b), e=(a++)*(--b), f=(a++)/(--b), i=g+h, j=g-h, k=g*h, l=g/h; console.log(c); // 8 ??? console.log(d); // 4 ??? console.log(e); // 7 ??? console.log(f); // Infinity ??? console.log(g); // 4 console.log(h); // 4 console.log(i); // 8 console.log(j); // 0 console.log(k); // 16 console.log(l); // 1 </script> </body> </html>
为什么c,d,e,f的数值是这样的呢?
27
收起
正在回答
2回答
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ++和--的运算</title> </head> <body> <script> //代码补充 var a=4, b=5, g=a++,//a++ 赋值给g后+1使 a = 5; h=--b,//--b 赋值给h前-1 b = 4; c=(a++)+(--b), d=(a++)-(--b), e=(a++)*(--b), f=(a++)/(--b), i=g+h, j=g-h, k=g*h, l=g/h; console.log(c); // 8 ??? // a++ 的意思是用当【计算完成】后再+1 // --b 的意思是先-1来【计算】 //c = (a++) + (--b) // a++ 在计算时为5 , --b 要先减1 再来计算 这时值为3 //也就是 c = 5 + 3; 所以等于8, //计算完成后的值, a = 6, b = 3 console.log(d); // 4 ??? // 因为上面计算后 a 和 b 的值都变了 // a = 6 , b = 3 //d = (a++) - (--b) //d = 6 - 2 , 等于 4 //计算完成后 a = 7 , b = 2 console.log(e); // 7 ??? //e = (a++)*(--b) //e = 7 * 1; // 计算完成后 a = 8 , b = 1 console.log(f); // Infinity ??? // f = (a++)/(--b) // f = 8 / 0; // 8无法除0 console.log(g); // 4 console.log(h); // 4 console.log(i); // 8 console.log(j); // 0 console.log(k); // 16 console.log(l); // 1 </script> </body> </html>
希望能帮到你。
请点【采纳答案】
如果还有问题,我会全力为你解答。⁄(⁄ ⁄•⁄ω⁄•⁄ ⁄)⁄
lanrtop
2017-12-20 07:46:24
【为什么a和b的值会不断变化呢?继承上一个的值?】
因为 a++ 就是在计算完成后+1 将最终结果返回到 原变量中。
--b,就是先-1 ,再将结果放回到原变量中。
你只要知道这个计算过程就明白了。
情景:
var a = 4,b = 5,c; c = (a++) + (--b); //a++【意思:计算完后+1返回到原变量】 a 的值是4,再计算,计算完成后的值是 5。 //--b【意思:计算前-1返回到原变量】使 b 的值-1变成4,再进行计算。 // 用他们计算之前的值来计算c的值。 // c = 4 + 4; c = 8 //计算完成后a,b的变化 // a = 5,b = 4 //如果进行下个计算,会使用该变量的值。
【怎样是a和b的值固定为a=4,b=5呢?】
var a = 4, b = 5, c; c = a; // c等于4 b = b - 1; // 因为【给b赋值】,b等于4 c = a + b; //c 等于8
总结;
只要不使用 a++ ,a-- ,++a, - -a 和 不给原变量赋值。 a , b 就会为固定值。
前端小白入门系列课程
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36713 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星