其实代码拼成图形不麻烦,最麻烦的是拼完了之后,代码仍然可以运行,为这个做了很多工作。
github 开源地址: https://github.com/xinyu198736/js2image 欢迎围观。
这里还有篇技术细节讲解的文章: http://zhuanlan.zhihu.com/yutou/20439979
效果:可以看一下我们公司官网页面里的 js , http://www.souche.com
http://assets.souche.com/assets/js/lib/jquery-1.7.1.min.js
效果图:
1
zythum 2015-12-23 19:22:28 +08:00
看来贵公司很闲... 把所有 js 都处理了下。是不是功能都要测一遍才敢上啊....
|
2
xinyu198736 OP @zythum 其实只替换了主要的几个 js ,随手测了下没报错就上了。。。
|
3
zythum 2015-12-23 19:40:10 +08:00
@xinyu198736 js 是运行时的随手测不一定能测全。朱一比较保守。不太敢这么玩....
|
4
zythum 2015-12-23 19:40:25 +08:00
@xinyu198736 不过确实挺有趣的
|
5
chairuosen 2015-12-23 19:42:56 +08:00
可以扩展一下,拼成个对联。。。。
|
6
Strikeactor 2015-12-23 19:44:58 +08:00
你们。。赢了。。
|
7
xinyu198736 OP @chairuosen 有图片就能拼。。。
|
8
xinyu198736 OP @zythum 官网用的人不多了。。。没人管,随便改,哈哈
|
9
rvw 2015-12-23 19:49:28 +08:00
你牛你说话
|
10
swolf119 2015-12-23 19:59:25 +08:00
也是寂寞的够了
|
11
kiito 2015-12-23 20:00:52 +08:00 via Android
有女朋友么
|
12
banricho 2015-12-23 20:36:18 +08:00
看来工作不饱和啊,不得不说这个团队氛围真的很赞
|
13
xinyu198736 OP @kiito 早结婚了,老婆还没毕业的时候就领证了
|
14
ilotuo 2015-12-23 20:57:45 +08:00
用 c 比较无压力
|
15
xinyu198736 OP 已经 110 个 star 了,顶上去,走出中国冲出世界登录火星
|
16
Wangxf 2015-12-23 21:44:55 +08:00
建议加上英文版 readme_EN ,哈哈
|
17
50vip 2015-12-23 21:54:30 +08:00
要有英文才能登上火星。
|
18
aksoft 2015-12-23 22:08:25 +08:00
@chairuosen 我顶你
|
19
zonghua 2015-12-23 22:08:54 +08:00 via iPhone
这就是 javascript 要加分号的重要原因
|
20
xinyu198736 OP @Wangxf 英文已加
|
21
xinyu198736 OP @chairuosen 过年可以拼成对联
|
22
otakustay 2015-12-23 22:59:36 +08:00
@zythum 这个其实没这么麻烦,通常这种格式美化只是换行和空格的调整,并不会改变代码的执行逻辑
所以,拉出 AST 来看是不是没变就行了,我看到有少数的字符串被分开做+运算以便能够插入换行,这个可以很简单地在 AST 上做 merge 的 也有可能会额外加入一些空语句来填充一些位置,这个我不确定是否方便,但做 tree shaking 应该也可以有效地去除 但总的来说,嗯,你确实得很闲 |
23
irobot03 2015-12-23 23:01:37 +08:00
很有新意,已 star
|
24
xinyu198736 OP 已经上 trending 。。。
|
25
xinyu198736 OP @otakustay 恩,不过我不太懂 AST ,为了快速实现,用了暴力的字符串分析,也写了篇文章分析其中涉及的技术。不过不用 ast 的问题就是如果考虑不够全的话,不能保证 100%的编译成功。
|
26
Tink 2015-12-24 00:09:28 +08:00 via iPhone
求 python 版
|
27
lwbjing 2015-12-24 00:12:21 +08:00
芋百万 V587..
|
28
lshero 2015-12-24 00:25:42 +08:00
“官网用的人不多了。。。没人管,随便改”
老板看见会不会发飙啊? |
29
xinyu198736 OP @lshero 不会,我们公司的业务就不在官网。。。已经一年多没动过代码了
|
31
lk920724 2015-12-24 12:06:40 +08:00
...怎么恢复?
|
34
xinyu198736 OP @lk920724 源代码都在的。。。你访问我一个 js 的时候我会判断是否存在.xmas.js ,如果存在就输出 xmas 地内容,过了明天直接改一下这个配置就可以了
|
35
xinyu198736 OP @lk920724 2333
|