JavaScript
文章平均质量分 92
xhsdnn
程序员之所以犯错误,不是因为他们不懂,而是因为他们自以为什么都懂。
展开
-
JavaScript之变量与常量
前端JavaScript常量变量声明赋值原创 2016-04-03 20:30:10 · 447 阅读 · 0 评论 -
Egg.js小记
写在前面有关Egg.js(以下简称:egg)的基本介绍这里就不再赘述了,官网上写的很清楚,下面直接对egg的使用及原理进行叙述。一、约定首先,egg实际上是继承于koa的,egg在koa的基础上制定了很多约定和规范,扩展性也很高。但是有的地方必须遵循这些约定和规范,比如目录结构: 二、内置对象既然是基于koa那肯定支持koa的内置对象,包括:Application, Co...原创 2018-07-14 15:49:34 · 15794 阅读 · 6 评论 -
神奇的console
写在前面启动vue工程的时候,无意之间发现了控制台的输出,随即产生了兴趣,并且发现console还有很多好玩的东西。 1.console.logconsole.log相比于其他console方法使用频率应该高得多,但是可能不知道console.log也可以像C语言或者JAVA一样,可以使用格式控制输出。 比如,我可以这样写:console.log("my name is...原创 2018-07-06 09:21:20 · 338 阅读 · 0 评论 -
JavaScript之闭包
一、闭包的定义 函数对象可以通过作用域链相互关联起来,函数体内部的变量都可以保存在函数作用域内,这种特性在计算机科学文献中称为“闭包”。——《JavaScript权威指南》二、为什么使用闭包 首先让我们来看一下全局变量与局部变量的区别: 全局变量:可以反复使用,且共享使用;但是可能随时在任意位置被篡改(全局污染)。 局部变量:不可反复使用;但方法调用完毕自动释放。 所以我原创 2016-07-18 12:45:48 · 334 阅读 · 0 评论 -
JavaScript之内置对象、字符串API
JavaScript内置对象 ES标准已经规定好,由浏览器厂商已经实现的对象,开发人员直接使用,不必关心具体实现。内置对象共有11个: String、Number、Boolean、Array、Data、RegExp、Math、Error、Function、Object、Global. 注: 1.String、Number、Boolean属于包装类型; 2.Global即指原创 2016-04-19 21:45:13 · 516 阅读 · 0 评论 -
JavaScript之数组API、栈和队列、冒泡排序
API:已经实现的方法,我们开发人员可以直接调用,不需要知道源代码。将数组转化为字符串//1.var str = arr.toString(); 返回数组中的元素用逗号分隔。 var arr = ["s","t","r"];var str = arr.toString();console.log(str);//s,t,r//2.var str = arr.join("/*连原创 2016-04-14 22:28:58 · 512 阅读 · 0 评论 -
JavaScript之数组
一维数组 内存中的数组: 1.引用类型的对象 2.每个值相当于一个元素 3.每个都有一个下标 数组对象的个数: 1.数组是从0开始计数的,即arr[0]是arr数组中的第一个元素。 2.arr.length,永远等于最大一个下标+1 使用数组中的元素: 数组名[i];创建1.创建空数组 var 数组名 =[];//js中见到[]就是数原创 2016-04-12 19:51:55 · 264 阅读 · 0 评论 -
JavaScript之分之结构
分之结构中的隐式转换 条件默认都转为bool.作用: 判断某个值是否有效。一个条件,一件事(一种操作)操作简单: 利用短路,满足条件就做,不满足条件就什么都不做。条件&&(操作1,操作2,...)操作复杂: 用if结构一个条件,两件事(两种操作) 二选一执行。操作简单: 条件?操作1:操作2; /*例:*/ a>b?console.log("a大于b"):conso原创 2016-04-08 22:56:51 · 265 阅读 · 0 评论 -
JavaScript之函数
函数定义 内存中封装一项任务的步骤清单代码段的存储空间,再起一个名字。 函数其实是引用类型的对象。 函数名仅是引用函数对象的变量。 执行过程定义时 仅创建函数对象,封装步骤清单代码段的对象。 不读取函数内容。 调用前 1.在ECS中为本次调用压入新的EC. 2.创建AO,将引用保存在EC中。 3.预读所有局部变量保存在AO中。注:原创 2016-04-07 22:41:03 · 307 阅读 · 0 评论 -
JavaScript之数据类型转换——隐式转换与运算符
隐式转换无需程序员干预,js自动完成的类型转换。 隐式转换其实是一把双刃剑,如果利用好的话会减少很多代码量;但是在不需要的时候一定要记得进行强制转换,转成自己需要的类型,不然会出现许多莫名其妙的错误和操作。运算符算数运算隐式转换: 默认转数字再计算。 在+运算中,只要有一个字符串,就都转为字符串,在拼接。 console.log("123"+456);//"123456"原创 2016-04-06 22:08:39 · 864 阅读 · 0 评论 -
JavaScript之数据类型转换——强制转换
JavaScript是一种弱类型语言。特点: 1.声明变量时不需要提前指定数据类型。 2.同一个变量可先后保存不同的数据类型。 3.js会自动根据自身需要自动类型转换。var a=1;var b=true;var c="string";console.log(a+b);//2console.log(a+c);//"1string" 具体的转换方式会在运算符中逐一说明。原创 2016-04-05 22:05:54 · 855 阅读 · 0 评论 -
JavaScript之数据类型
原始类型 值直接保存在变量本地的数据类型。stringstring类型的数据一旦创建不可改变!只能整体替换。unicode存储每个字符 字母、数字、英文标点——1字节 汉字——2字节number 整数——4字节 浮点数——8字节舍入误差 计算机中也有计算不尽的小数var a=2;var b=1.6;console.log(a-b);//3.9999999999原创 2016-04-04 22:49:00 · 225 阅读 · 0 评论 -
canvas性能优化——离屏渲染
零、写在前面最近在做一些canvas以及WebGL之类的动画,突然发现做粒子动画的时候在数量过多的时候很卡,性能特别低,所以了解了一下性能优化的一些方法,在这里记录一下,也希望得到跟多优化方法的分享以及错误的指正。这是示例代码以及展示效果,另外可能根据不同设备的本身性能差异效果可能跟下面展示的数据不完全一样,但是大同小异。一、正常动画实践为了使用户达到更好的体验,做动画的时候都知道...原创 2018-08-14 22:06:28 · 20628 阅读 · 3 评论