ES6常用Feature

1.数组去重,一行

array = Array.from(new Set(array)) //new Set返回的是个对象,需要from生成数组.

2.数组操作

  • 克隆数组:const arr = [...arr1]
  • 合并数组:const arr = [...arr1, ...arr2]
  • 拼接数组:arr.push(...arr1)

理解闭包

首先JS函数运行会有一个作用域,全局作用域

函数执行会有一个本地作用域。函数作用域

作用域,作用域就是一套规则,用于确定在何处以及如何查找变量(标识符)的规则。通俗的讲,作用域就是查找变量的地方。

从本地查不到到全局查,这种称为作用域链。

闭包就是访问并保留自身外的作用域对象的函数。

响应式设计

一个创建友好移动端网站的初学者教程.

“响应式设计”意味着你的网站显示在各个端应该都相似.他是一个网站设计和开发消除差异化的过程.

响应式通过media queries css完成.media queries检测用户设备告诉浏览器什么忽略或者什么显示什么.

继续阅读“响应式设计”

Gulp新人指南-2 watch 预处理 scss

补充一下Index.html代码

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
    <link href="css/styles.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <h1>测试页面</h1>
    <svg></svg>
</body>
</html>

Globbing in Node/Node通配符

Globs 匹配模式或者文件类型从而添加更多文件到gulp.src,类似正则表达式,但是主要用于文件路径.

当使用通配符,计算机检查

多数Gulp只需要4种不同的通配符:

  1. *.scss:  *匹配当前目录所有类型(当前项目或者目录).
  2. **/*.scss: 这个匹配所有根目录以及子目录的文件.
  3. !not-me.scss:  !符号会排除一个文件,这个例子里not-me.scss会被排除.
  4. *.+(scss|sass):+和()括号会增加匹配类型,使用|分号分开,这个例子会包括.scss和.sass.

现在我们可以用scss/**/*.scss替换app/scss/styles.scss.

继续阅读“Gulp新人指南-2 watch 预处理 scss”