⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 utilarray.js

📁 SQLiteDBMS是SQLite数据库的管理服务器软件
💻 JS
字号:
function arrayUnique(array, sorted, reject) {
	if (!sorted) array=array.sort();
	var ret=arrayCopy(array);
	if (ret.length <= 1) return ret;
	for (var i=ret.length-1; i--;) {
		if (ret[i] == ret[i+1])
			ret.splice(i,1);
		if (ret[i] == reject)
			ret.splice(i,1);
	}
	return ret;
}

function arrayGet(array, searchIdx, value) {
	if (!array) return null;
	for (var key in array) {
		if (array[key][searchIdx] == value) return array[key];
	}
	return null;
}

function arraySearch(needle, array) {
	if (!needle || !array) return null;
	for (var key in array) {
		if (array[key] == needle)
			return key;
	}
	return -1;
}

function arrayCopy(array) {
	var ret=new Array;
	var key;
	for (key in array) {
		if (isArray(array[key]))
			ret[key]=arrayCopy(array[key]);
		else ret[key]=array[key];
	}
	return ret;
}

function copy(obj) {
	var ret={};
	var key;
	for (key in obj) {
		if (isArray(obj[key]) || isObject(obj[key]))
			ret[key]=copy(obj[key]);
		else ret[key]=obj[key];
	}
	return ret;
}

function arrayDel(delim, array) {
	if (!delim || !array) return array;
	var idx=arraySearch(delim, array);
	if (idx > -1)
		array.splice(idx, 1);
	return array;
}

function arrayDiff(array1,array2) {
	if (array1.length == 0)
		return array2;
	if (array2.length == 0)
		return array1;

	var ret=arrayCopy(array2);
	var key, i;

	for (i=array1.length; i--; ) {
		key=arraySearch(array1[i], array2);
		if (key > -1)
			ret.splice(key,1);
	}
	return ret;
}

function arguments2Array(argv) {
	var ret=[];
	for (var i=0; i < argv.length; i++) {
		ret.push(argv[i]);
	}
	return ret;
}

function isArray(obj) {
	if (!obj || !obj.constructor) return false;
	return (obj.constructor.toString().indexOf("Array") != -1);
}

function isObject(obj) {
	if (!obj || !obj.constructor) return false;
	return (obj.constructor.toString().indexOf("Object") != -1);
}

var _aDumpExclude=['parentNode', 'all', 'parentElement', 'offsetParent', 'document', 'ownerDocument', 'nextSibling', 'previousSibling', 'firstChild', 'lastChild', 'currentStyle', 'attributes', 'children', 'parentTextEdit'];

function aDump(obj, noalert, prefix, depth) {
	if (!prefix) prefix='';
	if (!obj) {
		if (!noalert) alert('no data');
		return '\n';
	}
	if (!depth) depth=0;
	if (depth > 2) return '\n';
	var str='';
	for (var property in obj) {
		if (!obj[property]) continue;
		if (property.substr(0,2) == 'on') continue;
		if ((isArray(obj[property]) || isObject(obj[property]) || typeof obj[property] == 'object') && arraySearch(property, _aDumpExclude) == -1)
			str+=prefix+property+'<\n'+aDump(obj[property], true, '  '+prefix+property+'.', depth+1);
		else str+=prefix+property+': '+obj[property]+'\n';
	}
	if (!noalert) {
		if (str.length > 200) {
			var div=document.createElement('TEXTAREA');
			document.body.appendChild(div);
			div.noWrap=true;
			div.style.cssText='position:absolute;overflow:scroll;width:300px;height:400px;top:0px;left:0px;background-color:white';
			div.value=str;
			div.ondblclick=new Function('this.parentNode.removeChild(this);');
		}else
			alert(str);
	}return str;
}

⌨️ 快捷键说明

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