gwyi blog

你既然认准一条道路
何必去打听要走多久


  • 首页

  • 归档

  • 标签

  • 搜索

ES6学习笔记(二):变量的解构赋值

发表于 2017-02-18 | 分类于 ES6 |

数组的解构赋值

在ES6中允许按照一定的模式,从数组或对象中提取值,对变量进行赋值,这种方式称为解构(Destructuring)。在ES5中,我们是这样为变量赋值的

1
2
3
var a = 1;
var b = 2;
var c = 3;

而在ES6中,我们可以这样为变量赋值

1
let [a, b, c] = [1, 2, 3];

从数组中提取值,按照对应的位置,为变量进行赋值。

阅读全文 »

ES6学习笔记(一):let和const命令

发表于 2017-02-18 | 分类于 ES6 |

ES6新增了let和const两个命令来声明变量,这两个新的命令和ES5中的var命令有很多不同之处,而且使用let和const会让代码看起来更严谨。

块级作用域

在ES5的时候,只有全局作用域和函数作用域,ES6新增了块级作用域的概念,看下面的代码

1
2
3
4
5
6
{
var a = 1;
let b = 1;
}
console.log(a); // 1
console.log(b); // ReferenceError: b is not defined

在上面的代码块之中,分别用var和let声明了变量a和b,然后我们在代码块之外访问变量a和b,结果用var声明的变量a能够访问到,而用let声明的变量b报错了。这表明,用let声明的变量只在它所在的代码块内有效。for循环中的计数器就非常适合用let来声明,用let声明的计数器i的作用域仅仅在循环体中,外部是没法访问到的,而用var声明的计数器j的作用域却是全局的,在任何地方都能访问,而这并不是我们想要的结果。

阅读全文 »

js常用代码

发表于 2017-01-20 | 分类于 JavaScript |

返回指定范围的随机数(m-n之间)的公式

1
2
3
4
5
6
function random(m, n) {
return Math.random() * (n-m) + m;
}
// example
random(3, 5); // 4.680004527528821

rem布局(动态设置html根节点font-size大小)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
(function (doc, win) {
var docEl = doc.documentElement,
resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize';
function recalc() {
var clientWidth = docEl.clientWidth>540 ? 540 : docEl.clientWidth; // 控制最大宽度为540px
if (!clientWidth) return;
//此处的100为页面html设置的字体大小值(为方便计算一般用100px)
//此处的320为视觉稿宽度的一半
//根据设备可视区的宽度以及设备像素比动态改变fontSize值
docEl.style.fontSize = 100 * (clientWidth / 320) + 'px';
};
recalc();
if (!doc.addEventListener) return;
win.addEventListener(resizeEvt, recalc, false);
if (doc.readyState === 'complete') {
recalc();
} else {
doc.addEventListener('DOMContentLoaded', recalc, false);
}
})(document, window);
阅读全文 »

sublime text 常用插件

发表于 2016-12-13 | 分类于 工具 |

sublime被誉为前端开发神器,虽然小巧但是性能强悍,而且可以高度自定义,包括安装各种功能强大的插件、主题,能够极大的提高编码效率。

安装sublime text

sublime text官网下载地址:https://www.sublimetext.com/download

安装插件

Package Control

在安装插件之前需要首先安装Package Control(sublime的包管理器),能够帮助我们实现插件的安装、删除、更新等操作

安装package Control步骤

  • 按下Ctrl + ` 打开控制台

  • 在控制台中粘贴下面的代码并运行(只适用于sublime text 3)

1
import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
阅读全文 »

Hello World

发表于 2016-12-11 |

flower

折腾了两个晚上,终于把博客搭好了

之前自己通过github也搭了一个小小的个人网站,希望能够记录一些东西

无奈管理起来太麻烦,也没有现有的轮子高大上,所以就把网站迁移到coding上去了,贴一下网址我的个人网站

废话不多说,接下来的时间就需要挑灯夜战开始写写写了…

12
gwyi

gwyi

前端开发工程师一枚,希望能记录一些自己在工作中遇到的问题,和大家共同学习、交流

10 日志
5 分类
5 标签
GitHub 微博
© 2017 gwyi
由 Hexo 强力驱动
主题 - NexT.Pisces