请选择 进入手机版 | 继续访问电脑版

俗人斋

搜索
热搜: 建站
这里是一个私人的根据地,想进入小圈子的就快来注册吧!
立即注册

合作站点账号登陆

快捷导航
查看: 121|回复: 4

[欢乐一下] 【程序员之殇】解决bug就是创造bug的过程

[复制链接]

64

主题

571

帖子

2万

积分

洞悉因果

High Templar

Rank: 10Rank: 10Rank: 10

积分
22129

千山暮雪霜寒仙境七彩神话论坛元老星尘契约长乐未央亘古刻痕任我心意星际争霸II人理存续暗黑破坏神IIIDotA2PhotoshopAfter EffectPremiereAuditionDreamweaverMayaNuke冰雪学徒紫玉慕君长空白隼柠檬飞天刺客信条

威望
3852
金钱
9758
贡献
4066
QQ
透明的星尘 发表于 2021-1-25 15:25:59 | 显示全部楼层 |阅读模式
本帖最后由 透明的星尘 于 2021-1-25 15:29 编辑

事情倒不是很复杂,就是我组课题组主页出现的问题。[课题组主页]

上周李老师突然说,她主页里自己的代表作文章怎么那么奇怪。我一看,的确很奇怪,那么多大作都不见了,放上去的反而是一些默默无闻的文章。
  1.   jQuery(".Yanpapers").html(showbyids("0|29|36|38|84|85|86|103|111|125"));
复制代码

查一下代码,我是根据文章ID来决定展示哪些代表作的,然后发现除了0之外,ID都偏了一格。然后一拍脑袋,懂了!之前因为有一篇文章登录重复了,删掉了,导致后边的ID都乱掉了。

本来把这行代码的编号改一下就好了,结果自己画蛇添足地把所有ID重设了一遍。过几天尧叔跟我说,好像有几篇昊哥的文章但是没有李老师的名字。
我很快就意识到了发生了什么,甚至都没有拍脑袋。
  1. for(var i=0;i<pub.length;i++){
  2. if(pub[i].author.toLowerCase().indexOf(author.toLowerCase()) > -1 && pub[i].year.indexOf(year)> -1){
  3. if(author === "Li Ding" && pub[i].year<2015){continue;}
  4. if(author !== "Hao Sun" && pub[i].ID === "SH"){continue;}
  5. count++;
  6. rHtml += '<p class="paperList">' + count + '. ' + paperPrint(pub[i]) + '</p>';
  7. }
  8. }
复制代码
为什么别的文章ID都是数字,这里却会出现SH呢?因为之前昊哥说要把他的个人展示页加工一下,加入一些他个人参与的文章,然后我就用修改文章ID的方法,将这些个人文章排除在组内文章搜索引擎外了。如上文所述,我把这个ID重置成数字了,所以这些文章就变成可以被搜索的了。
上一行的Li Ding则是因为我们组和彭老师组都有一个可以被写成Li Ding的人,还好不是一个年代的,用时间错开就好了。
bug算是解决了,希望不会再连锁出新的来了。


另外还有个小bug,文章搜索页面里,如果文章没有链接,依然会显示[link]按钮,但是点击之后会回到主页。
  1. //将文章的json属性转化为标准引用格式。
  2. function paperPrint(paper){
  3. "use strict";
  4. var rHtml="";
  5. if(<b><font color="#ff0000">paper.link === ""</font></b>){
  6. rHtml += paper.author + ' "' + paper.title + '" ' + '<strong><em>' + paper.sci + '</em></strong> '+ '<strong>' + paper.year + '</strong>' + ', ' + paper.page;
  7. }
  8. else {
  9. rHtml+= paper.author + ' "' + paper.title + '" ' + '<strong><em>' + paper.sci + '</em></strong> '+ '<strong>' + paper.year + '</strong>' + ', ' + paper.page <b><font color="#ff0000">+ ' [<a href="' + paper.link + '" class="paperlink">LINK</a>]'</font></b>;
  10. }
  11. return rHtml;
  12. }
复制代码
干脆加个分支语句,没有文章链接的干脆不显示[Link]按钮就完事了。


用科学造福社会,
用艺术渲染人生。
回复

使用道具 举报

64

主题

571

帖子

2万

积分

洞悉因果

High Templar

Rank: 10Rank: 10Rank: 10

积分
22129

千山暮雪霜寒仙境七彩神话论坛元老星尘契约长乐未央亘古刻痕任我心意星际争霸II人理存续暗黑破坏神IIIDotA2PhotoshopAfter EffectPremiereAuditionDreamweaverMayaNuke冰雪学徒紫玉慕君长空白隼柠檬飞天刺客信条

威望
3852
金钱
9758
贡献
4066
QQ
 楼主| 透明的星尘 发表于 2021-1-25 15:35:50 | 显示全部楼层
本帖最后由 透明的星尘 于 2021-1-25 15:39 编辑


虽然课题组主页没发现bug,却发现了一个论坛里的bug。
  1. //将文章的json属性转化为标准引用格式。
  2. function paperPrint(paper){
  3. "use strict";
  4. var rHtml="";
  5. if(<b><font color="#ff0000">paper.link === ""</font></b>){
  6. rHtml += paper.author + ' "' + paper.title + '" ' + '<strong><em>' + paper.sci + '</em></strong> '+ '<strong>' + paper.year + '</strong>' + ', ' + paper.page;
  7. }
  8. else {
  9. rHtml+= paper.author + ' "' + paper.title + '" ' + '<strong><em>' + paper.sci + '</em></strong> '+ '<strong>' + paper.year + '</strong>' + ', ' + paper.page <b><font color="#ff0000">+ ' [<a href="' + paper.link + '" class="paperlink">LINK</a>]'</font></b>;
  10. }
  11. return rHtml;
  12. }
复制代码
大家注意看第5行和第9行,出现了加粗的标签<b>和字体标签<font>,我本来是想把这两块着重标注出来,却发现在代码模块里,所有标签都不会被识别。想想也没毛病,这其实算不上bug,正常的区域里html标签是会生效的,要想不生效需要用到转义符;而这个代码模块里为了更安全的展示代码,设置的是html标签不生效,非要在这个标签不生效的区域里让标签生效,感觉有点套娃了。
用科学造福社会,
用艺术渲染人生。
回复

使用道具 举报

53

主题

374

帖子

1万

积分

超级版主

第三视角

Rank: 8Rank: 8

积分
12770

长乐未央千山暮雪七彩神话论坛元老空之境界SteamGithub长空白隼

威望
1390
金钱
8131
贡献
1460
木綿 发表于 2021-1-27 12:57:35 | 显示全部楼层
现在看见代码就眼晕,跟厨师回家以后就不想做饭了一样(本程序员不是一个合格的程序员。。想退休。。
回复

使用道具 举报

64

主题

571

帖子

2万

积分

洞悉因果

High Templar

Rank: 10Rank: 10Rank: 10

积分
22129

千山暮雪霜寒仙境七彩神话论坛元老星尘契约长乐未央亘古刻痕任我心意星际争霸II人理存续暗黑破坏神IIIDotA2PhotoshopAfter EffectPremiereAuditionDreamweaverMayaNuke冰雪学徒紫玉慕君长空白隼柠檬飞天刺客信条

威望
3852
金钱
9758
贡献
4066
QQ
 楼主| 透明的星尘 发表于 2021-1-29 10:07:15 来自手机 | 显示全部楼层
木綿 发表于 2021-1-27 12:57
现在看见代码就眼晕,跟厨师回家以后就不想做饭了一样(本程序员不是一个合格的程序员。。想退休。。 ...

不过站长是个合格的大厨!
回复

使用道具 举报

64

主题

571

帖子

2万

积分

洞悉因果

High Templar

Rank: 10Rank: 10Rank: 10

积分
22129

千山暮雪霜寒仙境七彩神话论坛元老星尘契约长乐未央亘古刻痕任我心意星际争霸II人理存续暗黑破坏神IIIDotA2PhotoshopAfter EffectPremiereAuditionDreamweaverMayaNuke冰雪学徒紫玉慕君长空白隼柠檬飞天刺客信条

威望
3852
金钱
9758
贡献
4066
QQ
 楼主| 透明的星尘 发表于 昨天 17:12 | 显示全部楼层
课题组网站bug的确多,我之前设置的课题组个人主页会列出这个人的所有文章,然而最近组里多了几篇中文综述,这些并不会被检索进去。
后来专门为这一页写了个检索函数,搜索包含中文名和英文名的文章。
用科学造福社会,
用艺术渲染人生。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|俗人斋

GMT+8, 2021-5-8 03:26 , Processed in 0.046949 second(s), 19 queries .

Copyright © 2018 俗人斋 | Ellie Zheng

Powered by Discuz! X3.4 & Legend of 7 Colors

快速回复 返回顶部 返回列表