读javascript百炼成仙笑死笔记一

“自然是这样的,但是我现在这样改一下,你说结果是多少呢?”叶小凡诡异地笑了笑,然后打出一段比较奇特的代码。

var a = 1;
var b;
var sum = (b = a++ + --a) + a-- + b++;


“噗!”看到这段代码,对面弟子差点一口老血喷出来,破口大骂:“叶小凡,你……你……你欺人太甚!”

“呵呵,这位师兄,这可怨不了我,再说了,互相切磋技艺也是演武场的规矩啊。”叶小凡回想起这段被叶老折磨的日子,再看到面前这位弟子的表情,顿时开心了不少。其实这道题目就是平时叶老给叶小凡做练习的时候出的。
“这个小娃娃倒是有趣。”绿水院掌尊尹曾琪看到叶小凡竟然能出这样的题,纵然是他也眼前一亮,不由称赞道。当然,以他目前的修为,这种题目自然是难不住他的。但是很难想象,一个刚刚进入山门的小娃娃竟然有如此造诣,实在是让人惊讶。
“这道题看似复杂,其实只要一步一步拆分,也是可以分析和理解得很透彻的。”林元青微微一笑,看着叶小凡的目光中多了几分期待。毕竟,叶小凡是他亲自带上山来的,他多少有一点印象,而且他也很想看看,叶小凡如何解答这道题。
“天哪,这种题目也太匪夷所思了吧。这个叶小凡真是不知道天有多高,地有多厚。”
“就是,就是,依我看呐,这根本就是那个叶小凡随便瞎掰的一道题,我看他自己多半也做不出来。”
“哈哈,师兄说的是啊,就让我们一起看看他如何出糗吧。”
场外有很多资历比叶小凡高出不少的大弟子,他们刚才试着算了一下,但是马上就自行放弃了,纷纷向叶小凡投来鄙夷的目光。但是,其中有一道目光却充满了严肃,这个人是一个和叶小凡年龄相仿的少年,旁边有几个功力深厚的年轻人跟随着他。这时候,一个长相略显老气的人对该少年说道:“少爷,您是当今太上大长老最喜爱的长孙,资质和天赋也是我派数百年来的翘楚。依属下看,这个叶小凡真是不知天高地厚,多半是随便糊弄了一下,自己都不知道这道题怎么解。”
只见少年把手一扬,那名男子立刻不说话了。接着,他饶有兴趣地看着叶小凡,这人便是门派内定的继承人,门派中太上大长老最喜欢的长孙——罗丹。
“叶小凡,现在你把这道题解释一下吧。”林元青看向叶小凡,稳重但不失威严地说道。
“是。”叶小凡面朝着林元青作揖,然后抬起胸脯,缓缓道来。
“这道题看似复杂,但只要一步一步细细分开,还是有迹可循的。”

var a = 1;
var b;
var sum = (b = a++ + --a) + a-- + b++;

“首先,变量b只是被定义了一下,并没有赋值,在运行第3行代码之前,b的值就是undefined,表示未定义。”
“嗯,继续说。”
“弟子遵命,接下来就是第3行代码。这一行代码比较长,我试着把它拆分出来。首先是这一句。”

b = a++ + --a;

“很明显,这是一个赋值语句,a++是后置++,那么就先把a的值放进去运算。这个时候,a的值还是1。但是,一旦a++结束,a的值就变为2了。换句话说,当执行到后面的--a的时候,a的值就是2。”
“重点来了,又因为--a是前置--,意思就是先自减,然后放进式子中运算。刚才我们说到a的值已经是2了,那么--a在这里就变回了1。因此,这个表达式中,b最终的值就是1+1=2。”
“我这边使用括号是为了让变量b的赋值语句先进行运算。所以,b的值在后面参与运算的时候就已经是2了。刚才a最后的值是1,那么后面的a--因为是后置--,参与运算的值还是1。因此,“(b=a++ + --a)+a--”的结果就是3,a--过后变成了0,不过后面和a没有啥关系了。最后一个是b++,由于是后置++,所以b变量参与运算的值还是2。那么,最终的答案当然就是3+2=5啦。”叶小凡轻松地说着,似乎根本不觉得这是什么困难的事情。
寂静,一片寂静。
就连对面的弟子也听得津津有味,场外的一众大弟子个个屏住了呼吸,看着叶小凡,似乎自己还真的小瞧了这个刚进山门的小师弟。罗丹双眼死死地盯住叶小凡,脸色出现了从未有过的凝重。
“嗯,不错,你理解得很好。”林元青不吝称赞,一种欣慰的感觉油然而生。
第一场比拼,自然是叶小凡获胜。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yusirxiaer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值