ECMAScript6(5):函数的扩展

2018-09-05
阅读 9 分钟
1.4k
以上写法, 如果传入了参数, 但这个参数对应值的布尔型是 false, 就不起作用了。当然你也可以判断 arguments.length 是否为0来避免这个问题, 但每个函数这样写就太啰嗦了, 尤其参数比较多的时候。在 ES6 中我们可以直接写在参数表中, 如果实际调用传递了参数, 就用这个传过来的参数, 否则用默认参数。像这样:

ECMAScript6(4):字符串类型扩展

2018-09-05
阅读 5 分钟
1.7k
javascript内部用 utf-16 格式存储字符, 这样仓促的引入 utf-32 的码点会引起许多错误, 所以 ES6 在 String.prototype 上添加了 CodePointAt() 方法替换 charCodeAt(), 用静态方法 String.fromCodePoint() 替换了 String.fromCharCode(), 以解决因编码差异导致的计算错误。

ECMAScript6(3):数值类型扩展

2018-09-05
阅读 2 分钟
1.1k
新加 Number.isFinite() 方法判断一个数字是否有限, Number.isNaN() 方法判断一个变量是否 NaN。值得注意的是, 如果将非数值传入这两个函数, 一律返回 false。

ECMAScript6(2):解构赋值

2018-09-05
阅读 3 分钟
1.6k
解构赋值简单来说就是 对应位置(数组)或对应键名(对象)的变量匹配过程。如果匹配失败, 对于一般变量匹配不到结果就是 undefined, 对于具有展开运算符(...)的变量结果就是空数组。

ECMAScript6(1):块级作用域

2018-09-05
阅读 3 分钟
1.2k
块级作用于对于强类型语言经验的人应该非常好理解, 一言以蔽之:ES5对变量作用于分隔使用了函数(词法作用域), 而ES6使用花括号(块作用域)。对于词法作用域在 javascript函数、作用域链与闭包 中有详细的解释。对于let 和 const声明的变量在花括号的分割下同样会形成作用于链(内部访问外部的, 但外部不能访问内部)。但是...

ECMAScript6(0):ES6简明参考手册

2018-09-04
阅读 15 分钟
1.8k
除了var,我们现在有了两种新的标示符用来存储值——let和const。与var不同的是,let和const 声明不会提前到作用域的开头。(译注:即不发生声明提前)

css元素居中方法

2018-09-04
阅读 3 分钟
1k
写在前面:很多时候我们需要水平居中时候用margin: 0 auto;但我们要知道,这个方法有很大的局限性,它不能对浮动元素和绝对定位元素居中,而且对于其他元素必须在有width属性时才有作用。

CSS伪类的实例

2018-09-04
阅读 11 分钟
1.8k
既然说到伪类,这里就用足够的代码给表现一下他们的神奇用法。从简单到复杂,可以清晰的看清到伪类的诸多使用方法,对于有些功能近似的就取其一举例了:

css3 弹性布局和多列布局

2018-09-04
阅读 12 分钟
3.3k
弹性盒子基础 弹性盒子(Flexible Box)是css3中盒子模型的弹性布局,在传统的布局方式上增加了很多灵活性。 定义一个弹性盒子 在父盒子上定义display属性: {代码...} 当然还有行内布局的弹性盒子 {代码...} 注意,设为Flex布局以后,子元素的float、clear和vertical-align属性将失效。 弹性盒子兼容情况 Chrome 29+ Fire...

Chrome 调试技巧

2018-09-04
阅读 5 分钟
10.1k
写在前面本文包括浏览器调试,不包括web移动端调试。本文调试均在chrome浏览器进行 alert 这个不用多说了,不言自明 console 基本输出 想必大家都在用console.log在控制台输出点东西,其实console还有其它的方法: {代码...} 注意上面输出的error和throw出的error不一样,前者只是输出错误信息,无法捕获,不会冒泡,更...

babel——下一代 JavaScript 语法的编译器

2018-09-04
阅读 3 分钟
2.3k
写在前面:Node 环境是默认支持 ECMAScript6 的,但我们需要使用 babel 来满足我们使用新特性的需求。以下内容为了不让项目产生环境依赖,没有使用全局安装的方式。你可以新建一个文件夹,在其内部执行。

Ajax 与异步数据传输

2018-09-03
阅读 11 分钟
2.7k
Ajax 全称是异步的 JavaScript 和 XML 。 通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。传统的网页(不使用 AJAX)如果需要更新内容,必须重载整个网页页面。

一道题看透函数柯里化

2018-03-16
阅读 3 分钟
2.6k
对于函数的柯里化(currying)应该不陌生,简单来说 Currying 技术是一种通过把多个参数填充到函数体中,实现将函数转换为一个新的经过简化的(使之接受的参数更少)函数的技术。当发现正在调用同一个函数时,并且传递的参数绝大多数都是相同的,那么用一个Curry化的函数是一个很好的选择.