从一行CSS调试代码中学到的JavaScript知识 现在到处都是JavaScript,每天都能知道点新东西。一旦你入了门,你总能从这里或是那里领悟到很多知识。
一旦我发现一些有意思的东西,我喜欢去感觉他们的源代码,看一看它是怎么办到的。
今天我想分享Addy Osmani的一行代码 ,这行代码对于你调试你的CSS是很有用的。为了可读性,我把它变成了3行。
[].forEach.call($$("*"),function(a){
a.style.outline="1px solid #"+(~~(Math.random()*(1<<24))).toString(16)
}) io.js新支持的ECMAScript 6功能特性详解 io.js第一个版本正式
发布, 将默认支持JavaScript 的 ES6 标准,并不需要 --harmony 标签。
- Block scoping (let, const)
- Collections (Map, WeakMap, Set, WeakSet)
- Generators
- Binary and Octal literals
- Promises
- New String methods
- Symbols
- Template strings
那么这些功能都能干什么,具体怎么用?看看示例代码就可一目了然。
在nodejs中使用Redis缓存和查询数据及Session持久化(Express) 使用数据库来集中管理session,存放Session内容,并在各个子域名跨域共享Cookies
(SessionID),即可实现为每一个子域分配一个独立的node.js
Web服务器,各个服务程序均可依据sessionid从数据库中寻找到同一Session,从而实现不同Web
Server中的会话同步,从而实现一定程度上的负载均衡。
要想实现完全意义的负载均衡还需要将Web服务做到完全状态无关,不仅仅是Session,所有的中间缓存数据都要转移到与服务器无关的缓存层中,这正是Redis最善长的地方。
在ExpressJS(NodeJS)中设置二级域名跨域共享Cookie 注* 使用数据库mongostore来集中管理session,并在各个子域名跨域共享Cookies/SessionID, 即可实现为每一个子域分配一个独立的node.js Web服务器,可以实现一定程度上的负载均衡。
解决方案: 这样设置即可。
app.use(express.session({
secret: conf.secret,
cookie: { domain:'.yourdomain.com'},
store: new MongoStore(conf.sessiondb)
})); 在Debian(Raspberry Pi)树莓派上安装NodeJS 在树莓派上运行NodeJS并不需要特别的配置,你只需要确保可以用openssh远程连接到你的树莓派。并不是所有最新版的NodeJS都能在树莓派上使用。因为有些没有正确地指定ARM的指令集。
注* 树莓派使用的是ARM v6指令集的CPU,但Chriumun V8最版JavaScript引擎,可能使用了一些ARM v7的功能,比如内存保护等。
使用NodeJS将XML解析成JSON及性能比较 并不是所有的API都是以JSON格式返回的。我们有时侯不得不处理一些XML。幸运的是有一个NodeJS模块
xml2js 可以帮你做这件事。
有人指出xml2js的速度过慢,有人做过性能测试,
htmlparser2 的性能可以提升大约5倍以上。
Node.JS开发者常犯的10个错误(一) Node.JS在过去几年有着长足的发展。越来越多的人采用基于Node的NPM来发布他们的模块,并且
远远超过了其它语言 。然而当你从其它语言转向Node时,需要一些时间才能适合它的哲学。
Callback Hell是node程序经常被抨击的一点,在NodeJS中回调嵌套是无法避免的,但是你可以使用一些工具保持你代码的优美和整洁
Node.js安全教程:防止阻塞Event Loop的潜在攻击 我们的node.js服务器会偶尔挂一段时间(几秒钟),为什么会这样?
那么,为什
么会这样呢?简单的回答是,我们的代码时不时地阻塞了node.js的事件循环(Event Loop)。你可能已经知道了node.js ——
像浏览器中的JavaScript一样 ——
是单线程的。是由一个事件循环驱动的。一次只会处理一件事件。并行处理在这里是不存在的。所以node.js很善于处理I/O密集型的工作。因为在处理
一个请求时,大部分时间是花在I/O等待上面了。(从磁盘上读取数据,从网络收发数据),但是它并不善长处理CPU密集型的工作。
JavaScript中的$$(*)代表什么和$选择器的由来 当Firebug在2006年被创立的时侯。当时的JavaScript库Prototype.js使用$来表示getElementById()。这个语法糖很方便地抓取到了用户想要的元素。它节省了大量的时间,之后整个框架都使用采用了$语法糖。
在2006年初,jQuery发布了,然后使用基于CSS选择器的$()语法来选择任意元素。在之后的几天,Prototype也发布了自己的CSS选择器引擎,但是$已经在他们的库中被占用了。所以它们换成了$$()。称之为bling-bling 函数。
2015年薪酬最高的五个IT职位 2014年已悄然过去,在这一年里微软收购了诺基亚、联想收购了摩托罗拉、思科收购Metacloud。那么对于IT界的从业人士来说,关心的可能并不是这些大事件,而是关乎我们切身利益的薪酬问题。2015年是全新的开始,那么在这新的一年里有什么IT技术岗位是薪酬最高的呢?请跟随小编一起来看看吧!