js是世界上最好的语言之一,或许可以不用加之一

我是个js游戏前端开发者,但是我不局限于只是开发h5游戏,微信小游戏...

js很强大很强大很强大,没有哪种语言能通吃,除了js. 网页, app, 服务器, 数据库等等都可实现.

我最钟意的编辑器vscode, 就是用js开发的.

一个好汉三个帮,只是纯用js毕竟是有限的,借助其html+css+chrome就能发挥强大的功效

----------------------------浏览器相关---------------------------------------------------------------------------------

  强制缓存   cache-control还有另外几个值可以设置

  • private 客户端可以缓存
  • public 客户端和代理服务器都可以缓存
  • max-age=60 缓存内容将在60秒后失效
  • no-cache 需要使用对比缓存验证数据,强制向源服务器再次验证
  • no-store 所有内容都不会缓存,强制缓存和对比缓存都不会触发

  CORS 服务端设置 Access-Control-Allow-Origin

JSONP 的原理很简单,就是利用 <script> 标签没有跨域限制的漏洞。通过 <script> 标签指向一个需要访问的地址并提供一个回调函数来接收数据当需要通讯时。

      JSONP 使用简单且兼容性不错,但是只限于 get 请求。
  <script src="http://domain/api?param1=a&param2=b&callback=jsonp"></script>
  <script>
  function jsonp(data) {
  console.log(data)
   }
  </script>

----------------------------css相关---------------------------------------------------------------------------------------

  1. css的关键是div,会了div,就会了css. 比较类似于游戏引擎中的精灵(例如pixi.js中的sprite)
  2. nav 是html5新增的标签,主要用于制作导航( navigate)菜单。其实它本身是没有什么特殊性的,用div也一样可以,但它具有语义性,可以增加代码的可读性,如果一个html文档中全部是div标签,时间一长,别说是别人,就连编写者自己如果没加注释都可能分不清哪个是哪个了。而用了nav就不同了,啥时候一看,即使英文再差也大概知道它与导航有关。html5新增的那些标签如section、header、footer、article等基本上都是这个作用。
  3. template元素是一种用于保存客户端内容的机制,该内容在页面加载时不被渲染,但可以在运行时使用JavaScript进行实例化
  4. @keyframes 定义动画 animation控制动画
  5. transition属性允许css的属性值在指定的时间内进行过度,也就是执行动画效果。它是以hover,focus,active等伪类作为动画触发的条件。也就是动画效果必须基础悬停,点击等事件才能触发
  6. 传统的布局:从左到右,从上到下.有很多问题
  7. flex弹性布局,打破的传统计布局的一些限制。justify-content主轴的对齐方式, align-items交叉轴的对齐方式, align-content属性定义了多根轴线的对齐方式额外空间分配(可以看成是二维的) http://www.runoob.com/w3cnote/flex-grammar.html

--------------------------javascript相关----------------------------------------------------------------------------

  1:for in与Object.keys的区别  for in 会遍历自身及继承的可枚举的属性,  引入enumerable的最初目的,就是让某些属性可以规避掉for...in操作.

2:Promise((resolve, reject)=>{}).then(resolve, reject).then...;   Promise构造函数的参数是自执行函数

3:es6输出的是值的引用,commonJS模块输出的是被输出值的拷贝

4:微信中import和require的区别?

    module.exports初始值为一个空对象{}, exports是指向module.exports的引用, require()返回的是 module.exports

5:代码打包 webpack 可以打包一切资源, browserify 是用来打包 JS 模块的

6:把字符串转化为代码 new Function();

   7:js丑化与美化 uglifyjs beautifier

------------------------html相关-----------------------------------------------------------------------------------

单页面应用,Github 上各个标题之间的跳转等,路由里的 # 不叫锚点,我们称之为 hash

------------------------手机调试-------------------------------------------------------------------------------------

qq用的是x5内核.   https://debugx5.qq.com/,        然后自己设置

--------------------------ecs-------------------------------------------------------------------------------------------

组件用来存储游戏状态并且没有任何的行为(Behavior); System有行为但是没有状态。

因为组件没有函数而System没有任何字段

System不知道实体到底是什么,它只关心组件集合的小切片

js全端的更多相关文章

  1. 2016 Web开发资源工具大搜罗

    来源于:https://zhuanlan.zhihu.com/p/22730771 作者:余博伦链接:https://zhuanlan.zhihu.com/p/22730771来源:知乎著作权归作者所 ...

  2. 2016 Web 开发资源工具大搜罗

    原文链接: 100+ Awesome Web Development Tools and Resources Web的迅猛发展对于开发者来说既是一件好事也是一件坏事.不断紧跟潮流学习新的技术.编程语言 ...

  3. 全端开发必备!10个最好的 Node.js MVC 框架

      Node.js 是最流行的 JavaScript 服务端平台,它允许建立可扩展的 Web 应用程序.Node.js 包含不同类型的框架,如 MVC 框架.全栈框架.REST API  以及大量的服 ...

  4. 【入门必备】最佳的 Node.js 学习教程和资料书籍

    Web 开发人员对 Node.js 的关注日益增多,更多的公司和开发者开始尝试使用 Node.js 来实现一些对实时性要求高,I/O密集型的业务.这篇文章中,我们整理了一批优秀的资源,你可以得到所有你 ...

  5. 【干货分享】Node.js 中文资料导航

    这篇文章与大家分享一批高质量的的 Node.js 中文资料.Node.js 是一个基于 Chrome JavaScript 运行时建立的一个平台, 用来方便地搭建快速的, 易于扩展的网络应用 Node ...

  6. Sea.js创始人玉伯的前端开发之路

    在Web应用程序的用户体验越来越被重视的今天,前端开发的地位也上升到了前所未有的高度,而随之而来的也有更多的挑战. 为了将前端开发者繁重的工作变得简单,框架应运而生.国内也不乏一些非常优秀的前端开发框 ...

  7. 【开源专访】Sea.js创始人玉伯的前端开发之路

    摘要:玉伯,淘宝前端类库 KISSY.前端模块化开发框架SeaJS.前端基础类库Arale的创始人.本期[开源专访]我们邀请玉伯来为我们分享一些关于前端框架.前端开发的那些事,以及前端大牛是如何炼成的 ...

  8. PayPal为什么从Java迁移到Node.js

    前言 大家都知道PayPal是另一家迁移到Node.js平台的大型公司,Jeff Harrell的这篇博文 Node.js at PayPal  解释了为什么从Java迁移出来的原因: 开发效率提高一 ...

  9. 《.NET最佳实践》与Ext JS/Touch的团队开发

    概述 持续集成 编码规范 测试 小结 概述 有不少开发人员都问过我,Ext JS/Touch是否支持团队开发?对于这个问题,我可以毫不犹豫的回答:支持.原因是在Sencha官网博客中客户示例中,有不少 ...

随机推荐

  1. cogs1685 【NOI2014】魔法森林 Link-Cut Tree

    LCT练手好题啊. SPFA的做♂FA是把边按照a排序,然后加一条权值为b的边跑SPFA,不断更新答案.很好的做♂FA,但复杂度无♂FA保证. LCT的做♂FA类似,也是把边按照a排序,然后也是加一条 ...

  2. UWP 应用程序名称本地化以及商店显示名称本地化

    大家应该都知道,在做多语言的时候,我们一般会让App名字也会随着语言变化而本地化. 比如我的App微识别 https://www.microsoft.com/store/productId/9PDSN ...

  3. (转)js在数组中删除重复的元素自保留一个(两种实现思路)

    例如:var student = [‘qiang','ming','tao','li','liang','you','qiang','tao']; 第一种思路是:遍历要删除的数组arr, 把元素分别放 ...

  4. Unity学习笔记(3):一些常用API和应用场景

    Mathf.Lerp(float a,float b,float t)插值函数,当a < b时往a中插入t,以此来实现颜色,声音等渐变效果. GameObject.FindWithTag(str ...

  5. Laya资源加载小记

    Laya.Loader负责资源的加载逻辑,被LoaderManager管理. Laya支持多种类型资源加载,也支持自定义类型加载.不同类型的加载方式可能不同. Laya.Loader缓存已经被加载过得 ...

  6. InnoDB表优化

    InnoDB表存储优化 适时的使用 OPTIMIZE TABLE 语句来重组表,压缩浪费的表空间.这是在其它优化技术不可用的情况下最直接的方法. OPTIMIZE TABLE 语句通过拷贝表数据并重建 ...

  7. 如何获取c:forEach里面点击时候的值

    1.c:forEach遍历输出 <c:forEach items="${data}" var="item" > <a onclick=&quo ...

  8. 剑指offer试题(PHP篇三)

    21.栈的压入.弹出序列 题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4 ...

  9. CHAPTER 24 History of Our Planet 第24章 我们行星的历史

    CHAPTER 24 History of Our Planet 第24章 我们行星的历史 Uncovering the bones of ancient beasts is only part of ...

  10. XGB算法梳理

    学习内容: 1.CART树 2.算法原理 3.损失函数 4.分裂结点算法 5.正则化 6.对缺失值处理 7.优缺点 8.应用场景 9.sklearn参数 1.CART树 CART算法是一种二分递归分割 ...