摘要:
函数可以将先前操作的结果记录在某个对象里,从而避免无谓的重复运算。这种优化方式被称为记忆(memoization)。JavaScript的对象和数组要实现这种优化是非常方便的。 比如说,我们想要一个递归函数来计算Fibonacci数列。一个Fib数字是之前两个Fib数字的和。最前面的两个数字是0和1 阅读全文
摘要:
1、codePointAt方法是测试一个字符由两个字节还是由四个字节组成的最简单方法。codePointAt方法会正确返回32位的UTF-16字符的码点。 2、ES5提供String.fromCharCode方法,用于从码点返回对应字符,但是这个方法不能识别32位的UTF-16字符(Unicode编 阅读全文
摘要:
1、ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。 2、ES6允许写成:let [a,b,c] = [1,2,3];上面代码表示,可以从数组中提取值,按照对应位置,对变量赋值。本质上,这种写法属于“模式匹配”,只要等号两边的模式相同,左边 阅读全文
摘要:
1、const声明一个只读的常量。一旦声明,常量的值就不能改变。 2、const声明的变量不得改变值,这意味着,const一旦声明变量,就必须立即初始化,不能留到以后赋值。 3、const的作用域与let命令相同:只在声明所在的块级作用域内有效。 4、const命令声明的常量也是不提升,同样存在暂时 阅读全文
摘要:
学习收藏。 1、来自http://www.cnblogs.com/yxz-turing/p/4784861.html 2、 阅读全文
摘要:
JPEG/PNG/GIF是Web浏览器广泛支持的3种图片格式。 1、JPEG格式最适合保存照片和其他复杂图像。 2、GIF和PNG格式最适合保存logo和其他包含单色、线条、文本的简单图形。 3、JPEG图像可以按不同质量压缩,所以可以很好地权衡图像质量和文件大小来满足需要。 4、GIF和PNG图像 阅读全文
摘要:
1、通过Object构造函数或对象字面量创建单个对象 这些方式有明显的缺点:使用同一个接口创建很多对象,会产生大量的重复代码。为了解决这个问题,出现了工厂模式。 2、工厂模式 考虑在ES中无法创建类(ES6前),开发人员发明了一种函数,用函数来封装以特定接口创建对象的细节。(实现起来是在一个函数内创 阅读全文
摘要:
1、let命令 ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。 for循环的计数器,就很合适使用let命令。 下面的代码如果使用var,最后输出的是10。 上面代码中,变量i是var声明的,在全局范围内都有效。所以每一次循环,新的i值 阅读全文
摘要:
第二十一章 多媒体和图形编程 1、为了强制让图片缓存起来,首先利用Image()构造函数来创建一个屏幕外的图片对象,之后将该对象的src属性设置成期望的URL。 2、由于各家浏览器制造商未能在对标准音频和视频编解码器支持上达成一致,因此通常都需要使用<source>元素来指定不同格式的媒体源。 3、 阅读全文
摘要:
5、数组方式使用jQuery对象 使用jQuery选择器获取结果是一个jQuery对象。然而,jQuery类库会让你感觉正在使用一个定义了索引和长度的数组。在性能方面,建议使用简单的for或者while循环来处理,而不是$.each(),这样能使你的代码更快。 6、事件代理 常用的JS事件如clic 阅读全文