repr.js

来自「一个简单的AJAX图书展示平台」· JavaScript 代码 · 共 91 行

JS
91
字号
/*	Copyright (c) 2004-2006, The Dojo Foundation	All Rights Reserved.	Licensed under the Academic Free License version 2.1 or above OR the	modified BSD license. For more information on Dojo licensing, see:		http://dojotoolkit.org/community/licensing.shtml*/dojo.provide("dojo.lang.repr");dojo.require("dojo.lang.common");dojo.require("dojo.AdapterRegistry");dojo.require("dojo.string.extras");dojo.lang.reprRegistry = new dojo.AdapterRegistry();dojo.lang.registerRepr = function(name, check, wrap, /*optional*/ override){        /***			Register a repr function.  repr functions should take			one argument and return a string representation of it			suitable for developers, primarily used when debugging.			If override is given, it is used as the highest priority			repr, otherwise it will be used as the lowest.        ***/        dojo.lang.reprRegistry.register(name, check, wrap, override);    };dojo.lang.repr = function(obj){	/***		Return a "programmer representation" for an object	***/	if(typeof(obj) == "undefined"){		return "undefined";	}else if(obj === null){		return "null";	}	try{		if(typeof(obj["__repr__"]) == 'function'){			return obj["__repr__"]();		}else if((typeof(obj["repr"]) == 'function')&&(obj.repr != arguments.callee)){			return obj["repr"]();		}		return dojo.lang.reprRegistry.match(obj);	}catch(e){		if(typeof(obj.NAME) == 'string' && (				obj.toString == Function.prototype.toString ||				obj.toString == Object.prototype.toString			)){			return o.NAME;		}	}	if(typeof(obj) == "function"){		obj = (obj + "").replace(/^\s+/, "");		var idx = obj.indexOf("{");		if(idx != -1){			obj = obj.substr(0, idx) + "{...}";		}	}	return obj + "";}dojo.lang.reprArrayLike = function(arr){	try{		var na = dojo.lang.map(arr, dojo.lang.repr);		return "[" + na.join(", ") + "]";	}catch(e){ }};dojo.lang.reprString = function(str){ 	dojo.deprecated("dojo.lang.reprNumber", "use `String(num)` instead", "0.4");	return dojo.string.escapeString(str);};dojo.lang.reprNumber = function(num){	dojo.deprecated("dojo.lang.reprNumber", "use `String(num)` instead", "0.4");	return num + "";};(function(){	var m = dojo.lang;	m.registerRepr("arrayLike", m.isArrayLike, m.reprArrayLike);	m.registerRepr("string", m.isString, m.reprString);	m.registerRepr("numbers", m.isNumber, m.reprNumber);	m.registerRepr("boolean", m.isBoolean, m.reprNumber);	// m.registerRepr("numbers", m.typeMatcher("number", "boolean"), m.reprNumber);})();

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?