自己写一个Javascript框架,是大四下学期才决定做的事情。随着Ajax的兴起,网站对Javascript的需求越来越大,而Javascript本身有不少缺陷和不足,需要通过框架去完善。而当时也已经有不少这类框架,比如prototype、jQuery、YUI等。虽然直接用这些现成的框架是很省力的,但我并没有这么做,原因在于:其一,需要学习这些框架的用法;其二,一旦出问题,要找到原因是很难的,毕竟我不是这些框架的作者;其三,自己重新写一个框架,能学到的东西更多,且成本不高。
那时候我对Javascript还是一知半解,需要找一些代码参照。我很庆幸有朋友给我介绍了myJsFrame,它麻雀虽小,五脏俱全。jRaiser最原始的版本就是仿myJsFrame编写的,还加入了一些prototype的内置类扩展,如著名的 function.prototype.bind 。
后来,我看了《精通Javascript》一书,作者是jQuery之父John Resig,他在书中提到了由另一位大师级人物Dean E
目前流行的数据库都提供了自动编号类型,SQLite也不例外。当数据库中包含自动编号的字段时,SQLite会自动建立一个名为 sqlite_sequence 的表。这个表包含两个字段:name 和 seq 。name字段记录了自动编号字段所在的表,seq字段记录了当前用到的序号(下一条记录的编号就是当前序号加1)。
在开发过程中,我们经常要把表重置。也就是说把表中的记录全部清空,并把自动编号归0。在SQLite中,只需要修改 sqlite_sequence 表就可以了:
UPDATE sqlite_sequence SET seq = 0 WHERE name = 'TableName'
也可以直接把该记录删掉:
DELETE FROM sqlite_sequence WHERE name = 'TableName'
要是想重置所有表,那直接把 sqlite_sequence
大部分数据库在进行字符串比较的时候,对大小写是不敏感的。但是,最近使用SQLite的时候,却发现它的情况恰好相反。
假设表User的结构和值如下:
执行下面的SQL语句:
SELECT * FROM [User] WHERE UserName = 'user1'
结果是没有找到任何记录。明显地,SQLite在进行字符串比较的时候,默认对大小写是敏感的。这会对应用程序造成不良的影响。比如
TidyBlog是一款基于ASP.NET 3.5平台的个人/多人博客系统。
运行环境
- Windows Server 2003 / Windows XP + IIS 6.0 + .Net Framework 3.5
- Windows Server 2008 / Windows Vista + IIS 7.0 + .Net Framework 3.5
- Windows Server 2008 R2 / Windows 7 + IIS 7.5 + .Net Framework 3.5
浏览器兼容性
兼容IE/6/7/8、Firefox、Safari、Chrome、Opera等主流浏览器
主要功能和特点
- 架构上支持多种数据库(目前仅有SQLite数据库的实现);
- 缓存常用数据,减轻服务器负担和增加运行速度;
ECMAScript中的Array类有一个排序方法,即本文主要讨论的Array.prototype.sort(下面简称sort),它的调用是很简单的:
var arr = [11, 2, 1];
alert(arr.sort());
然而,上面程序的输出结果是 "1,11,2" ,而不是我们期望的"1,2,11",这是因为在默认情况下,sort方法排序时会把元素临时转成字符串再比较。要解决这个问题,就要给sort传递一个参数,这个参数是一个进行元素比较的函数,其原型如下:
function compareFn(x, y)
它接受两个参数 x 和 y 。如果 x < y ,返回负数;如果 x == y,返回0;如果 x > y ,返回正数。如果要判断数字间的大小关系,直接做减法运算即可:
// 正序
function s
众所周知,ASP已经被微软淘汰了,跟着,又被许多的开发者抛弃了。然而,我仍然认为ASP无论是作为入门的技术还是开发平台,都很值得我们继续去使用。在Google上搜一下,可以发现一大堆对ASP不好的评价,什么运行速度慢、异常处理机制不好、缺乏面向对象机制、开发效率低、漏洞多等等。为了让大家对ASP有个正确的认识,我先为它正名。
一、ASP不慢,慢的是数据库
几年前,我用动网论坛程序架了一个BBS,这套程序就是当时经典的ASP+Access架构。我也遇到了某些人所说的论坛慢,有时候卡死不动的问题。然而,自从我换上SQL Server数据库以后问题就解决了。所以罪魁祸首乃Access。程序执行所需的时间是毫秒级别的,在这个级别内,无论是10毫秒还是100毫秒,实在是感觉不出来,但是Access的并发性差,阻塞了部分程序执行,导致页面卡死。
二、异常处理机制很好,只是很多人不知道
以前,很多人包括我在内都用VBScript来编写ASP程序,VBScript的异常处理机制的确是糟透了。