ES6-字符串的扩展

##字符的Unicode表示法

之前不识别在“\u”后面跟上超过0xFFFF的数值(比如\u20BB7),现在用只要将码点放入大括号中就能识别了(比如\u{20BB7})
所以现在JavaScript共有6种方法可以表示一个字符

‘\z’ === ‘z’ // true
‘\172’ === ‘z’ // true
‘\x7A’ === ‘z’ // true
‘\u007A’ === ‘z’ // true
‘\u{7A}’ === ‘z’ // true

阅读更多

iTerm2的使用

自从换了mac后连接远程linux服务器一直用电脑自带的终端,每次都要输密码,烦死了。看同事用iTerm挺方便的,就自己也弄了一个。

下载地址

http://www.iterm2.com/

记住远程服务器密码

1
2
3
4
5
set timeout 30
spawn ssh liuhaiming@122.92.222.122 -p51618
expect "*password*"
send “**********\n"
interact

阅读更多

setImmediate,setTimeout,nextTick的区别是什么

区别

1、nextTick和setImmediate主要的区别在于任务插入的位置nextTick的插入位置是在当前帧的末尾、io回调之前,如果nextTick过多,会导致io回调不断延后setImmediate的插入位置是在下一帧,不会影响io回调。

2、Nodejs的特点是事件驱动,异步I/O产生的高并发,产生此特点的引擎是事件循环,事件被分门别类地归到对应的事件观察者上,比如idle观察者,定时器观察者,I/O观察者等等,事件循环每次循环称为Tick,每次Tick按照先后顺序从事件观察者中取出事件进行处理。
调用setTimeout()时创建的计时器会被放入定时器观察者内部的红黑树中,每次Tick时,会从该红黑树中检查定时器是否超过定时时间,超过的话,就立即执行对应的回调函数。由于定时器是超时触发,这会导致触发精确度降低。

阅读更多