`

base.js,通用js方法,Js方法封装

阅读更多

base.js,通用js方法,Js方法封装

 

================================

©Copyright 蕃薯耀 2020-08-11

http://fanshuyao.iteye.com/

 

 

//增加window.console定义,解决IE6、7、8、9使用console.log报未定义的错误
window.console = window.console || (function(){
    var c = {}; 
    c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile = c.clear = c.exception = c.trace = c.assert = function(){};
    return c;
})();

/**
* 去掉字符串头尾空格
* @param str 传入的字符串值
*/
function trim(str) {
	if(str == null || typeof str == "undefined"){
		return "";
	}
    return str.replace(/(^\s*)|(\s*$)/g, "");
};

/** 
 * 是否为Null 
 * @param object 
 * @returns {Boolean} 
 */  
function isNull(object){  
    if(object == null || typeof object == "undefined"){  
        return true;  
    }  
    return false;  
}; 

/** 
 * 是否为空字符串,有空格不是空字符串 
 * @param str 
 * @returns {Boolean} 
 */  
function isEmpty(str){  
    if(str == null || typeof str == "undefined" ||   
            str == ""){  
        return true;  
    }  
    return false;  
};

/** 
 * 是否为空字符串,有空格也是空字符串 
 * @param str 
 * @returns {Boolean} 
 */  
function isBlank(str){  
    if(isEmpty(str) || isEmpty($.trim(str))){  
        return true;  
    }  
    return false;  
};

function removeLastCode(str){
	if(str == null || str.length < 1){
		return str;
	}
	return str.substring(0, str.length-1);
};

/**
 * 设置select选中
 * @param selectId select的id值
 * @param checkValue 选中option的值
*/
function setOptionSelected(selectId, checkValue){
	var select = document.getElementById(selectId);
	for(var i=0; i<select.options.length; i++){
		if(select.options[i].innerHTML == checkValue){
			select.options[i].selected = true;
			break;
		}
	}
};

/**
 * 获取checkbox选中数量
 * @param name checkbox的name值
*/
function getCheckBoxLength(name){
	var length = 0;
	var checkboxes;
	if(name == null || name == ""){
		checkboxes = document.getElementsByTagName("input");
		for(var j=0;j<checkboxes.length;j++){
			if(checkboxes[j].type=='checkbox' && checkboxes[j].checked){
				length+=1;
			}
		}
	}else{
		checkboxes = document.getElementsByName(name);
		for(var i=0;i<checkboxes.length;i++){
			if(checkboxes[i].checked){
				length+=1;
			}
		}
	}
	return length;
};

function getCheckedLength(name){
	var length = 0;
	if(name == null || name == ""){
		alert("请添加参数name");
	}else{
		var inputs = document.getElementsByName(name);
		for(var i=0;i<inputs.length;i++){
			if(inputs[i].checked){
				length += 1;
			}
		}
	}
	return length;
};


/**
 * 只返回一个checkbox的值
 * @param name
 * @returns
 */
function getCheckedValue(name){
	var value = null;
	if(name == null || name == ""){
		alert("请添加参数name");
	}else{
		var inputs = document.getElementsByName(name);
		for(var i=0;i<inputs.length;i++){
			if(inputs[i].checked){
				value = inputs[i].value;
				break;
			}
		}
	}
	return value;
};

/**
 * 返回勾选checkbox的所有值(字符串,通过,分隔)
 * @param name
 * @returns
 */
function getCheckedValues(name){
	var values = "";
	if(name == null || name == ""){
		alert("方法getCheckedValues(name)需要添加参数name");
	}else{
		var inputs = document.getElementsByName(name);
		if(inputs != null && inputs.length > 0){
			var splitCode = ",";
			for(var i=0; i<inputs.length; i++){
				if(inputs[i].checked){
					values  += inputs[i].value + splitCode;
				}
			}
			if(values.indexOf(splitCode) > -1){
				values = removeLastCode(values);
			}
		}
	}
	return values;
};

/**
 * 设置checkbox选中,同时适用于设置radio选中
 * @param name checkbox的name属性
 * @param checkValues checkbox的选择的值,通过英文逗号(,)连接
 */
function setChecked(name, checkValues){
	var checkboxes = document.getElementsByName(name);
	var checkboxesLength = checkboxes.length;
	
	var checkValuesArray = checkValues.split(",");
	var checkValuesArrayLength = checkValuesArray.length;
	
	if(checkboxesLength > 0 && checkValuesArrayLength > 0){
		for(var i=0; i<checkboxesLength; i++){
			for(var j=0; j<checkValuesArrayLength; j++){
				if(checkboxes[i].value == checkValuesArray[j]){
					checkboxes[i].checked = true;
					break;
				}
			}
		}
	}
};

/**
 * 根据id让Checkbox选中
 * @param id
 */
function checked(id){
	document.getElementById(id).checked = true;
};

/**
 * 根据id判断Checkbox是否选中
 * jquery方式:$("input[type='checkbox']").is(':checked')
 * @param id
 * @returns {Boolean}
 */
function isChecked(id){
	if(isEmpty(id)){
		alert("isChecked(id)方法中的id不能为空");
		return;
	}
	if(document.getElementById(id).checked){
		return true;
	}
	return false;
};

/**
 * 根据name判断Checkbox是否选中,有一个选中即返回true,所有不选中则返回false
 * @param name
 * @returns {Boolean}
 */
function isCheckedByName(name){
	if(isEmpty(name)){
		alert("isCheckedByName(name)方法中的name不能为空");
		return;
	}
	var checkboxes = document.getElementsByName(name);
	if(checkboxes != null && checkboxes.length > 0){
		for(var i=0; i<checkboxes.length; i++){
			if(checkboxes[i].checked){
				return true;
			}
		}
	}
	return false;
};

/**
 * 根据name判断所有Checkbox是否选中,所有选中则返回true,一个没选中返回false
 * @param name
 * @returns {Boolean}
 */
function isCheckedAllByName(name){
	if(isEmpty(name)){
		alert("isCheckedAllByName(name)方法中的name不能为空");
		return;
	}
	var checkboxes = document.getElementsByName(name);
	var checkboxesLength = checkboxes.length;
	var count = 0;
	if(checkboxes != null && checkboxesLength > 0){
		for(var i=0; i<checkboxesLength; i++){
			if(checkboxes[i].checked){
				count ++;
			}
		}
		if(count == checkboxesLength){//由于上面已经判断checkboxesLength > 0,这里不需要判断count==0,因为checkboxesLength已经不为0
			return true;
		}
	}
	return false;
};


/*
function thisIframeHeightAuto(){
	setIframeHeight("auditList");
};
 */
//window.setInterval("iframeHeightAuto()", 200);
function setIframeHeight(iframeId){
	var cwin = document.getElementById(iframeId);
	if(document.getElementById){
		if(cwin && !window.opera){
			if(cwin.contentDocument && cwin.contentDocument.body.offsetHeight){
				cwin.height = cwin.contentDocument.body.offsetHeight;//FF NS
				//console.log("FF NS cwin.height=" +cwin.height);
			}else if(cwin.Document && cwin.Document.body.scrollHeight){
				cwin.height = cwin.Document.body.scrollHeight;//IE
				//console.log("IE cwin.height=" +cwin.height);
			}
		}else if(cwin.contentWindow.document && cwin.contentWindow.document.body.scrollHeight){
			cwin.height = cwin.contentWindow.document.body.scrollHeight;//Opera
		}
	}
	//console.log("cwin.height=" + cwin.height);
};

/**
 * 是否为数字(仅正数),包括正整数、正小数、0
 * @param value
 * @returns
 */
function isNumber(value){
	var z_reg = /^(([0-9])|([1-9]([0-9]+)))(.[0-9]+)?$/;
	return z_reg.test(value);
};

/**
 * 是否为所有数字(正数、负数),包括整数、小数、0
 * @param value
 * @returns
 */
function isNumberAll(value){
	var z_reg = /^(-)?(([0-9])|([1-9]([0-9]+)))(.[0-9]+)?$/;
	return z_reg.test(value);
};

/**
 * 是否为正整数,包括正整数和0
 * @param value
 * @returns
 */
function isInteger(value){
	var z_reg = /^(([0-9])|([1-9]([0-9]+)))$/;
	return z_reg.test(value);
};

/**
 * 是否为所有整数,包括正整数、负整数、0
 * @param value
 * @returns
 */
function isIntegerAll(value){
	var z_reg = /^(-)?(([0-9])|([1-9]([0-9]+)))$/;
	return z_reg.test(value);
};

/**
 * 是否为小数(仅正小数)
 * @param value
 * @returns
 */
function isDouble(value){
	var z_reg = /^(([0-9])|([1-9]([0-9]+)))(.[0-9]+)$/;
	return z_reg.test(value);
};

/**
 * 是否为所有小数(正小数、负小数、0.0)
 * @param value
 * @returns
 */
function isDoubleAll(value){
	var z_reg = /^(-)?(([0-9])|([1-9]([0-9]+)))(.[0-9]+)$/;
	return z_reg.test(value);
};




 

 

================================

©Copyright 蕃薯耀 2020-08-11

http://fanshuyao.iteye.com/

1
2
分享到:
评论

相关推荐

    加密解密Base64的js封装代码

    为了实现更通用的Base64加密解密功能,我们可以编写自定义的JavaScript函数。下面是一个简单的封装示例: ```javascript function base64Encode(input) { // 将输入转换为字节数组 var byteArray = new Uint8...

    javascript常用函数 javascript 常用库

    在`common.base.js`这样的文件中,通常会包含一些常见的公共方法,比如通用的DOM操作、数据处理、网络请求封装等。这些方法可以被项目中的其他代码复用,减少代码重复,提高代码质量。例如,可能有一个`addClass`...

    propotype.js 相关文档

    - **TheAbstractobject**:抽象基类,定义了一些通用的行为和方法。 - **TheAbstract.Insertionclass**:提供了在DOM树中插入元素的能力。 - **TheInsertionobject**:具体实现元素插入的类。 - **TheInsertion....

    用html5+css+javascript完成的博客项目,涵盖常用函数封装

    "前端-分享侧栏Base.js"可能是基础的脚本文件,包含了通用函数和变量,而"前端-分享侧栏.js"可能是针对特定侧栏功能的扩展或应用。例如,可能包含有实现下拉菜单、轮播图或者拖放功能的代码,如"java-drag.js"所示,...

    Danica7773类库

    这个文件很可能是类库的基础部分,包含了通用的工具函数和方法。可能包含数组操作、字符串处理、对象操作、类型检测等基础功能。这些工具函数通常用于解决日常编程中遇到的常见问题,提供了一种标准化的解决方案,...

    prototype.js开发者手册(中文)

    - **Ajax.Base 类**:为所有 AJAX 类提供通用功能。 - **Ajax.Request 类**:用于发起 AJAX 请求。 - **Ajax.Updater 类**:用于更新页面上某个区域的内容。 - **Element 对象**:提供了大量 DOM 元素操作的方法。 -...

    PostgreSQL Node.js实现函数计算方法示例

    文章中的BaseController是一个基类控制器,封装了查询数据库表内所有数据、执行SQL语句等通用方法,并包含了日志记录的功能。 7. 业务逻辑控制器的继承:文章中的InqueryController是一个具体的业务逻辑控制器,它...

    axiosstudy.zip

    - **封装请求方法**:可以创建一组通用的请求方法,如 get、post 等,以便在组件中直接调用,简化代码。 - **错误处理**:在封装的请求方法中处理网络错误,如超时、404、500 等,返回错误信息。 - **Promise ...

    gxx_base源码

    `gxx_base`可能提供了对这两种容器的封装,使得使用更加方便或者具有特定的功能增强。 ### C++ 数组 数组是C++的基本数据结构之一,它允许存储相同类型的一系列元素。在C++中,可以使用`std::array`(C++11引入,...

    js面向对象简单理解

    在压缩包中的`Base.js`文件可能包含了一个基础类或者对象的实现,用于演示或作为其他类的基础。这个文件可能定义了一些基本的属性和方法,或者实现了某种通用的功能。 总的来说,JavaScript的面向对象编程涉及构造...

    Js参数RSA加密传输之jsencrypt.js的使用

    PKCS#1是RSA算法的标准封装格式,而PKCS#8是通用的私钥信息标准。在实际应用中,你需要使用相应的工具或库将私钥转换为正确的格式。 在后端解密过程中,通常会使用一个对应的解密库,例如Java的`JavaCrypto`或.NET...

    MyJs文件啊

    【描述】"我的js,base,js等文件" 提到的"base.js"可能是一个基础库或者脚本文件,通常包含一些通用功能或者初始化代码,供其他JavaScript文件引用。这样的文件在项目中起到基石作用,可以避免代码重复,提高代码...

    JavaScript----创建可重用代码

    例如,在`Base.js`文件中,我们可以定义一个基础类(Base Class): ```javascript // Base.js export class Base { constructor(name) { this.name = name; } logName() { console.log(`名字是:${this.name...

    第34章 项目1-博客前端:封装库--插件1

    基础库(Base)通常包含了通用的JavaScript操作,而像拖拽这样的特殊效果或交互功能则更适合被单独封装成插件。这样做的好处是保持代码的模块化,使得功能更易于维护和扩展。当需要拖拽功能时,可以方便地将其作为插件...

    第34章 项目1-博客前端:封装库--CSS[下]1

    封装CSS意味着创建一组通用的方法来处理DOM元素的样式。这里我们有两个主要方法:`addClass`和`removeClass`。 1. **添加 Class**: 使用`addClass`方法,我们可以向元素列表中的每个元素添加一个特定的类名。这个...

    c#常用通用操作方法类

    ### C#常用通用操作方法类知识点详解 #### 1. 创建自定义DataTable 在C#开发中,`DataTable`是处理数据的一种非常重要的方式。它提供了类似数据库表的数据结构,可以方便地存储、检索和操作数据。对于经常需要创建...

    FunTianLibrary:这是 JavaScript 库开发的逐步改进

    common.js: 包含部分通用的对象和方法。 cache.js: 基于 localStorage 的面向简单对象的缓存工具。 ui/ui-base.js: UI组件基础类,所有UI组件继承自该类。 ui/loader-button.js: 继承自UIBase类。使按钮具有状态,...

    BaseJS:Vanilla JS 基础库

    2. **事件处理**:BaseJS 包含了对事件监听、触发和解除的封装,使得事件绑定更加简洁,如`.on('click', handler)`,同时支持事件委托,提高性能。 3. **数据和类型处理**:BaseJS 提供了一些辅助函数,用于数据...

    小程序预览base64 码的pdf

    这可以通过小程序的`wx.base64ToArrayBuffer`方法完成,将Base64编码的PDF转换为ArrayBuffer对象,这是小程序能理解的数据格式。 3. **利用HTML5的Blob对象**:将ArrayBuffer转换为Blob对象,因为小程序没有直接...

Global site tag (gtag.js) - Google Analytics