关注IMWeb前端社区公众号

  • 第一时间获得最新、最火的技术干货
  • 定期推送您所关注的专题文章
  • 和大牛们一起讨论前端技术
  • 获取IMWeb社区、前端相关的最新活动
热文 更多

  • 怎样让开源项目看起来“高大上”

    为了避免重复造轮子,我们往往会借助开源的项目实现一些功能。很多时候,选择使用哪一个开源项目就像选择男、女朋友一样,固然内在很重要,但是眼缘也很关键,只有看对了眼,才会进一步地了解。作为开源项目的开发者,当然是希望自己写出来的成果能被更多的人尝试使用,所以这篇文章主要谈一谈怎样让开源项目看起来“高大上”,从而让别人有使用的冲动。 首先要弄清楚一个问题:怎样的开源项目才算“高大上”呢?这里举出两个例子,一个是在 2017 年越来越火的前端框架 Vue [https://Github.com/vuejs/vue] ,还有一个是我所在团队大神 avwo 开源的 web 调试代理工具 whistle [https://Github.com/avwo/whistle] ,大家可以去他们的 Github 地址感受一下,下面展示一下他们 Readme 的开头部分: Vue Readme Head [https://user-gold-cdn.xitu.io/2018/1/28/1613d39637dd22df?w=945>amp;h=343>amp;f=jpeg>amp;s=68365]

  • 新人如何搭建(copy)一个属于自己的博客

    对于很多刚学前端的朋友们来说(比如我),在学习的过程中经常会记一些笔记,除了现实中的烂笔头,我们也可以在PC上记笔记、写总结,下面分享一些或多或少会用上的网站或工具。 脑图类: Xmind [https://www.xmind.cn/] 、 百度脑图 [http://naotu.baidu.com/] ... 总结类: CSDN [https://www.csdn.net/] 、 简书 [https://www.jianshu.com/] 、 segmentfault [https://segmentfault.com/] 、 博客园 [https://www.cnblogs.com/] ... 当然,也有不少朋友们想拥有一个属于自己的博客,学会走路再学跑步,下面将简单暴力的教你搭建(拷贝)一个博客。我们的准备如下 * 拥有一个自己的域名 * 拥有 Git [https://git-scm.com/book/zh/v1/] 基础知识(不懂没关系,跟着大伙走,学会Github即可) * 拥有一个 GitHub [https://github.com/] 账号

  • 2018前端值得关注的技术

    1.前言 2017悄然过去,2018已经来到。人在进步,技术在发展。2018年前端有哪些领域,技术值得关注,哪些技术会兴起,哪些技术会没落。下面就我个人的判断进行一个预测判断,希望能对大家起到一个参考作用!下面提及的技术,只是建议大家关注,也不是建议大家全部的都要学,而是建议大家按需学,自己觉得哪些需要学,对哪些有兴趣就学哪些!如果大家有什么工具,框架,库觉得可以推荐的,欢迎在评论区提点,让大家相互进步,学习! 2.PWA PWA(Progressive Web Apps)由谷歌提出,用前沿的技术开发,让网页使用如同App般的体验的一系列方案。明确的一点就是:PWA就是一个网页, 可以通过前沿的技术开发出一个网页应用。 自从谷歌提出PWA后,就持续的获得了业界的关注,热度可见一斑。就在今年,谷歌也宣布: PWA将获得与安卓原生应用同等的待遇与权限。 [http://www.infoq.com/cn/news/2017/02/PWA-Chrome] 这就意味着以后的网页基本和APP将越发将近,那么关注度将会进一步的上升。 资料参考:

  • 前端开发规范之命名规范、html规范、css规范、js规范

    在学习编程的时候,每次看到那些整齐规范的代码,心里顿时对这个程序员表示点点好感,有时,比如看到自己和朋友写的代码时,那阅读起来就是苦不堪言,所以,一些基本的开发规范是必须的,是为了自己方便阅读代码,也方便他人阅读修改代码。 -------------------------------------------------------------------------------- 命名 驼峰式命名法介绍 Pascal Case 大驼峰式命名法:首字母大写。eg:StudentInfo、UserInfo、ProductInfo Camel Case 小驼峰式命名法:首字母小写。eg:studentInfo、userInfo、productInfo 文件资源命名 文件名不得含有空格 文件名建议只使用小写字母,不使用大写字母。( 为了醒目,某些说明文件的文件名,可以使用大写字母,比如README、LICENSE。 ) 文件名包含多个单词时,单词之间建议使用半角的连词线 ( - ) 分隔。

  • Canvas射击怪物游戏之getImageData()碰撞检测思路

    前段时间在制作射击怪物小游戏时(如图-1所示),在检测碰撞的算法上纠结了好久。正常的碰撞算法是通过计算元素的坐标值来进行碰撞判定。那么至少得有:怪物数量 x 子弹数量次的判断计算。考虑到游戏的拓展性,要求增加怪物与子弹数量的时候,那么计算量会增加得很可怕。于是乎我开始考虑有没有一种计算方式,只要循环判断每个怪物是否被子弹碰撞就好了,就这样,getImageData()函数引起了我的注意。 [http://7tszky.com1.z0.glb.clouddn.com/Fg6MvGuOfYrIZZ9kGVCYxmmmuc19] 图示-1 使用getImageData()函数计算碰撞的思路是: 1.在Canvas绘制当前帧的时候,先绘制好子弹路径,然后将怪物的位置坐标以及宽高参数传递给getImageData()函数,即context.getImageData(locationX, locationY, width, height)(如图-2所示),这样就能获取到红色区域的像素数据。

热问 更多

  • 赵鹏帆 2017-11-23 10:43

    如题:参考https://twitter.com/necolas/status/829128165314306048?utm_source=feweekly&utm_campaign=issue42&utm_medium=web PWA(做离线化的)目前有这么成熟吗? 这个是否也说明以Javascript为基础的全栈体系正在逐渐落地?

  • 大漠刀客 2018-01-13 17:42

    js高级程序设计里说 this 引用的是函数执行的环境对象, 下面foo()在window下执行,环境对象就是window? * function foo(){ * alert(this); * } * foo(); * 那么函数嵌套为什么也是[object Window]?比如下面的 * function foo(){ * function foo2(){ * alert(this); * } * foo2(); * } * foo(); 输出的还是window * function SpecialArray(){ * alert(this); * } * alert(this); * SpecialArray(); * var colors = new SpecialArray(); 弹出的依次是[object Window],[object Window],[object Object]?这里的Object又是什么情况

  • 络黎 2017-10-19 17:31

    请指出JavaScript宿主对象和原生对象的区别?