id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	due_date
47	分页标签一行代码理解问题	huangjianhua		"'''问题描述:'''
       在做产品搜索分页标签改版的时候,看代码发现一行很有趣的代码问题,代码如下:

{{{
95.  var pageNoEnd = pageNo < 4 ? 10 : pageNo + 7;
96.  pageNoEnd = pageNoEnd > pageTotal ? pageTotal : pageNoEnd;
97.  var pageNoBegin = pageNo - (9 - (pageNoEnd - pageNo));
98.  pageNoBegin = pageNoBegin < 1 ? 1 : pageNoBegin;
}}}
代码的意图: 在做分页的时候,想从代码的当前的页码中计算出能显示的结束页码,然后再计算出开始的显示页码;

在97行中,  

var pageNoBegin = pageNo - (9 - (pageNoEnd - pageNo));

理解起来想要表达什么意思,很费力;

'''问题解决:'''

其实上这一行代码是可以简化为:

var pageNoBegin = pageNoEnd - 9; 

想得到显示的开始页 直接用页面的结束页 减去 中间想要被间隔显示的数字即可了.

以后我们在写代码的时候尽量少用括号上面这种括号,除非是为了帮助理解才这样用,特殊情况下不建议这样用.尽量做到代码简化又容易理解.
"	QA	closed	major		商家后台		fixed	代码优化		06/12/2011
