<% include inc/header.html %>

原生对象的扩展

Object.values(obj)

获取对象值的集合

Array.prototype.sum

获取数组的和

全局函数

Class(obj)

通过该函数可以创建一个Class,实例化的时候可以省略new, 并且自动调用init方法。

var A = Class(function(){
	return {
		init: function(name){
			this.name = name;
		},
		mth: function(){

		}
	}
}).extend({
	othermth: function(){
		console.log("mth")
	}
})
var a = A("welefen");
console.log(a.name); //will be `welefen`
a.mth();

extend(target, source1, source2, ...)

复制对象的方法对另一个对象上,默认为深度复制。如果第一个参数为false, 则为浅度复制。该方法与jQuery的extend相似,只是默认为深度复制。

isBoolean(obj)

是否为布尔值

isNumber(obj)

是否为数值

isObject(object)

是否为object对象

isString(obj)

是否为字符串

isFunction(obj)

是否为函数

isDate(obj)

是否为日期对象

isRegexp(obj)

是否为正则表达式对象

isError(obj)

是否为错误对象

isEmpty(obj)

是否为空,false | "" | [] | {} | 0 | null | undefined 为true, 其他值为false。

isArray(obj)

是否为数组

isIP(obj)

是否为IP值,IP4 | IP6。

isIP4(obj)

是否为IP4。

isIP6

是否为IP6。

isFile(file)

是否是个文件,如果不存在,则为false。

isDir

是否是个目录,如果不存在,则为false。

isBuffer(obj)

是否Buffer对象。

isPromise(obj)

是否是Promise。

isWritable(path)

目录是否可写。

mkdir(p, mode)

同步模式递归创建一个目录。

chmod(p, mode)

同步模式修改目录的权限。

md5(string)

获取字符串的md5值。

getPromise(obj, reject)

getDefer

获取一个Deferred对象,含有resolve和reject方法,以及promise属性。

getObject(name, value)

快速生成一个Object,主要是方便name和value都是动态的时候生成。

thinkRequire(name)

thinkRequire相对于原生的require,多了根据特定的后缀自动查找的功能。类似于php里的autoload机制。

如:thinkRequire("UserModel")会自动从几个存放Model的目录查找UserModel模块,不需要手工写很长的文件路径。

inherits(superClass, methods)

C(name, value)

A

F

D

S

E

Controller类的方法

controller.ip()

获取当前用户的ip

controller.isGet()

是否为GET请求

controller.isPost()

是否为POST请求

controller.isMethod(method)

判断当前请求类型与传递的参数是否相同

controller.isAjax()

是否为ajax请求

controller.get(name)

获取get参数的值,如果name为undefined,则返回所有的参数值

controller.post(name)

获取POST参数的值,如果name为undefined,则返回所有的POST值

controller.param(name)

获取POST或者GET参数的值(优先从POST里获取),如果name为undefined,则返回所有的值

controller.file(name)

获取上传的文件对象

controller.header(name, value)

获取或者设置header

controller.userAgent()

返回用户的userAgent

controller.referrer()

返回当前请求的referrer

controller.cookie(name, value, options)

controller.session(name, value)

controller.redirect(url, code)

controller.assign(name, value)

controller.fetch(templateFile, content)

controller.display(templateFile, charset, contentType, content)

controller.action(action)

controller.jsonp(data)

controller.json(data)

controller.status(status)

controller.echo(obj, encoding)

controller.end(obj)

controller.download(file, contentType)

controller.success(data)

controller.error(data)

Model类的方法