为JavaScript设计一个指数操作(运算)符 在本文中,我将探讨如何为JavaScript设计一个新的幂运算符,我已经在提交了TC39的审议,并考虑加入ES7的语法规范。
在许多编程语言中,幂通过一个
算术运算符来表达; 最常见的为x** y(Python和F#,Ruby,Perl等等),或 X^Y(BASIC,Lua中,MATLAB,R等)。其他语言包括JavaScript和C#依靠内置对象提供的一个函数来实现:Math.pow 和 Math.Pow。
在JavaScript中通过一个特定的符号实现一个求幂运算,这是有道理的,这将更加有利于这种语言的教学和学习,因为它更加符合现代人的思维习惯。从上段所描述的两种设计中,我选择了**的形式,因为字符^已经被JavaScript用在
按位异或运算中。该**形式可以更好的兼容复合赋值运算格式:**=,而且这种语义等价于内置函数Math.pow
JavaScript中的继承,构造函数以及new关键字的作用 通常一个构造函数是这样子的,它带有一个area的原型方法,在构造函数中传入长、宽并计算面积。
var Shape = function(width, height) {
this.width = width;
this.height = height;
};
Shape.prototype.area = function() {
return this.width * this.height
};
var shape = new Shape(20, 30);
shape.area();
> 600
输出很完美,这也是经典JavaScript实现继承的方法,通过prototype添加对另外一个对象的引用。
不过一部分JavaScript程序是非常讨厌new关键字的,这个关键字有太浓烈的Java烙印了,而且掩盖了JavaScript基于原型的本质,降低了程序员使用JS语言的效率,因此你想把它省了,看看结果?
在Amazon的一年免费服务器上安装Node.JS, NPM和OurJS博客 此文是介绍如何在Amazon的一年免费计划上安装Node.JS,
NPM还有搭建OurJS博客系统。这里选用的操作系统是社区版Debian,Debian和Ubuntu的操作指令是一脉相承的,再加上之前玩过一段时
间的Raspberry PI,个人比较熟悉,以下的安装过程其实同样适用于树霉派(安装node.js和NPM那一部分)。
OurJS-免费开源的博客引擎,论坛系统,网站模板和轻量级的CMS OurJS开源了。OurJS 是一款基于Node.JS的轻量级,免费,开源的博客引擎,论坛系统,网站模板和内容管理系统。
这套框架使 ourjs.com 能够在使用最低配置云服务器的情况下(Debian 64位, 512Mb内存),支承起了较大的访问量,同时占用较少硬盘空间和内存以及服务器资源。
PS: 目前此最低配置云服务器上同时运行了三个网站(其它两个流量较小),SVN版本控制器、FTP文件服务器,nginx,和两个微信号后台程序(其中一个会处理较大查询消息量,曾经还有一个邮件服务器,均由node驱动),目前并没有满负载运行,一般1~2个月有重大升级时才会重启一次。
fibjs 比 nodejs 快五倍 fibjs 是一个建立在 Google v8 Javascript 引擎基础上的应用服务器开发框架,不同于 node.js,fibjs 采用 fiber 解决 v8 引擎的多路复用,并通过大量 c++ 组件,将重负荷运算委托给后台线程,释放 v8 线程,争取更大的并发时间。 [ 摘自 fibjs docs ]
fibjs 相似代码如下:
var http = require("http");
var svr = new http.Server(8080, function(req) {
var rep = req.response;
rep.addHeader({
"Content-Type": "text/html"
});
rep.body.write(new Buffer("Hello World!"));
});
svr.run();
有可能将CSS应用到一个字符的一半吗? 我在寻找
给一个字符的一半设置样式。(在本例中,字符的一半是透明的)
下面是目前我所寻找和尝试的:
- 将样式应用于字符或者字母的一半的方法
- 用CSS或JavaScript给字符部分设置样式
- 给字符的50%应用CSS
下面是一个例子,我想要获得的效果。
痛苦的Java程序员 Java程序员出了一些问题。我一直在使用Java,到现在已经超过10年了。我也有幸使用过许多其他语言
如:C#,C,C + +,Python,Lua,Objective-C - 我认为这对于理解Java程序员究竟出了什么问题起了很大的帮助。很
多人说Java是一种糟糕的语言。我不同意。 Java有它的缺点,但我认为,不是Java本身惹恼了人们,而是Java的使用方式。
TJ Holowaychuk将Express维护权移交给StrongLoop 我们非常高兴和荣幸地宣布,今天上午,TJ Holowaychuk已转让Express 项目和Expressjs.com 域名的维护权到StrongLoop。
从去年StrongLoop成立开始,我们一直在支持类似Express这样的基础项目。LoopBack一个我们支持的开源框架,像许多其他node框架一样,是建立在Express的基础上。所以,跟你们一样,我们对Express非常依赖。我们很高兴能有机会扩大我们的贡献,并帮助保持Express的稳定和强大。
TJ一直是StrongLoop的朋友,StrongLoop里的每个人都非常感谢这一切,及他对node社区做的贡献。我们从他那学到了很多,谢谢!
在node.js响应流中设置多个Set-Cookie header属性 有时你可能想在response响应中设置两次相同的header属性,比如设置两个cookie(Set-Cookie),但writeHead或setHead出现两个相同的属性时会被覆盖并合并成一个。但如何才能实现这一目标呢? HTTP response 有一个 writeHead对象? 其实可以通过一个数组来实现。
res.setHeader('Set-Cookie', [ 'mycookie1=value1', 'mycookie2=value2']);