版权声明:转载时请以超链接形式标明文章原始出处 http://blog.lonelystar.org/post/9.html

    一个网友问偶:

    我要获得 一个格子的八个方向的格子坐标,怎么获得,有合适的算法没?

    我现在是这样的:

     

     

    偶看了一下这个写法有几个问题:

    1.代码累赘,篇幅过多

    2.这么多个if...elseif...还不如直接用switch

    3.每次获取代码都要进行判断,其实可以不需要

    4.没有使用变量缓存属性,每次都是再次查找属性

     

    简单的考虑了一下

    偶觉得可以改进一下direction,也就是方向的数据格式

    就可以很好的提高效率和精简代码

    大概如下:

     

    JavaScript语言:
    //direction的格式为'0,1','1,-1'这样的
    var Ar=_this.closeList[_this.closeId],
    ArD=direction.split(','),
    newOpenListItem={x:Ar.X+ArD[0],y:Ar.Y+ArD[1]}

     

      本文现有3 条评论

    • 1  嗯 这思路不错 值得借鉴~~~

    • 2  L姐V5

    • 3  好像我以前写俄罗斯方块的时候也是用后一种思路。

    欢迎您发表评论:

     
    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。