#!/bin/env lujingbo

[译] CouchDB 技术概述

原文链接 Document 存储一个 CouchDB 服务器管理一些有名字的数据库,这些数据库里存储着称为documents的东西。每个 document 在数据库中被有一个唯一的名字,同时,CouchDB 提供了对其进行 reading 和 updating(add, edit, dele ...
Read more

[译] 解析JavaScript的事件循环机制

原文链接

目的

在web浏览器的世界中,JavaScript可以说是无处不在,也正因如此,大部分人对
JavaScript的事件驱动(event-driven)模型,以及它与Ruby,Python,
Java等语言所使用的请求-响应(request-response)模型的区别或多或少都有一些
基本的了解。我将在本文中阐述JavaScript并发(concurrency)模型的一些核心
概念,包括事件循环(event-loop)和消息队列(message queue),以便帮你有更
深入的理解。

Read more

读一读 ECMA262 3rd edition

Overview

Web Scripting

JavaScript是一种在宿主环境中执行计算和操作计算对象的面向对象编程语言。它起初被设计为一种Web scripting language,用来增加网页的交互性,以及执行一些服务端的计算。ECMAScript规范描述了其在宿主环境中的core scripting能力。
Web浏览器为javascript提供了作为客户端计算的宿主环境。它提供了一些对象用来表示windows, menus, pop-ups, dialog boxes, text areas, anchors, frames, history, cookies, 以及input/output。并且,这个宿主环境也提供了一种手段用来将scripting code绑定到一些事件上。例如,change of focus, page and image loading, unloading, error and abort, selection, form submission, 以及mouse actions。Scripting code嵌入在HTML代码当中,显示出来的页面由一些用户界面元素和一些固定位置并已计算好的文本和图像构成。Scripting code在用户的交互下会被触发执行,而不需要一个main程序去触发。
而Web服务器为javascript提供了另一中作为服务端计算的宿主环境(如node.js)。它提供了一些对象用来表示requests, clients, 以及files。它也提供一种机制来锁住或共享数据。

Read more