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. 对RedisTemplate接口二次封装成自定义工具接口

    开发过程中,经常使用redis数据库存储. 一般都是依赖注入redisTemplate,然后调用redisTemplate的api进行接口功能实现. 但是,如果对redisTemplate自带的API ...

  2. 5种处理js跨域问题方法汇总

    1.JSONP跨域GET请求 ajax请求,dataType为jsonp.这种形式需要请求在服务端调整为返回callback([json-object])的形式.如果服务端返回的是普通json对象.那 ...

  3. linux 利用cat写入一段文件

    linux 利用cat写入一段文件 cat >> /etc/rc.local <<EOFsysctl -w net.ipv4.icmp_echo_ignore_all=1sys ...

  4. MySQL数据库语法(一)

    MySQL数据库语法 数据库管理系统(DBMS)的概述 什么是DBMS:数据的仓库 方便查询 可存储的数据量大 保证数据的完整.一致 安全可靠 DBMS的发展:今天主流数据库为关系型数据库管理系统(R ...

  5. QTP日常积累

    1.init同步测试对象 同步测试对象: CODE: Browser("百度一下,你就知道").Page("百度一下,你就知道").WebEdit(" ...

  6. 错误结果保存示例 - 【jmeter】

  7. Netty源码分析第2章(NioEventLoop)---->第3节: 初始化线程选择器

    Netty源码分析第二章:NioEventLoop   第三节:初始化线程选择器 回到上一小节的MultithreadEventExecutorGroup类的构造方法: protected Multi ...

  8. 【Ansible】ansible 任务失败控制

    任务失败控制 Ansible 通常默认会确保检测模块和命令的返回码并且会快速失败 – 专注于一个错误除非你另作打算. 有时一条命令会返回 0 但那不是报错.有时命令不会总是报告它 ‘改变’ 了远程系统 ...

  9. Docker 在Windows上的安装

    1. 软件从Docker官网下载,进行安装,安装后,能看到如下界面. 2. 安装后,查看Docker 版 本信息. 3. 配置加速器 (1)选择setting. (2)依次选择,并填写自己的加速器地址 ...

  10. java内存结构JVM——java内存模型JMM——java对象模型JOM

    JVM内存结构 Java代码是要运行在虚拟机上的,而虚拟机在执行Java程序的过程中会把所管理的内存划分为若干个不同的数据区域,这些区域都有各自的用途.其中有些区域随着虚拟机进程的启动而存在,而有些区 ...