Ext = {};
//Ext.apply = function(o,c,d){}//见extjs源码分析-001(Ext.apply)
var toString = Object.prototype.toString
Ext.apply(Ext, {
//isFinite --->返回true 表示值是非 NaN 、非负无穷和非正无穷
isNumber : function(v){//是否为数字
return typeof v === 'number' && isFinite(v);
},
isBoolean : function(v){//是否为布尔值
return typeof v === 'boolean';
},
isString : function(v){//是否为字符串
return typeof v === 'string';
},
isNumber : function(v){//是否在有限的数组范围内,不包括无穷大/小
return typeof v === 'number' && isFinite(v);
},
isFunction : function(v){//是否为Function类型
return toString.apply(v) === '[object Function]';
},
isPrimitive : function(v){//判断V的值是否为基本数据类型(数字/字符串/布尔值)
return Ext.isString(v) || Ext.isNumber(v) || Ext.isBoolean(v);
},
isObject : function(v){//判断是否为对象类型
return !!v && Object.prototype.toString.call(v) === '[object Object]';
},
isDate : function(v){//判断v是否为日期对象
return toString.apply(v) === '[object Date]';
},
isArray : function(v){//判断v的类型是否为数组
return toString.apply(v) === '[object Array]';
},
isEmpty : function(v, allowBlank){//判断V是否为空,如果v的值为null,或者v的值未定义,或者v是空数组,或者v的值允许为空则返回空字符串
return v === null || v === undefined || ((Ext.isArray(v) && !v.length)) || (!allowBlank ? v === '' : false);
},
isDefined : function(v){//v-->判断V是否定义
return typeof v !== 'undefined';
},
isElement : function(v) {//返回是否为html元素节点对象
return v ? !!v.tagName : false;
},
isIterable : function(v){//是否可以迭代
//check for array or arguments //数组 或者 多个参数
if(Ext.isArray(v) || v.callee){
return true;
}
//check for node list type //节点数组
if(/NodeList|HTMLCollection/.test(toString.call(v))){
return true;
}
//NodeList has an item and length property 节点下有节点项 //IXMLDOMNodeList has nextNode method, needs to be checked first.
return ((typeof v.nextNode != 'undefined' || v.item) && Ext.isNumber(v.length));
},
})
详细解决方案
extjs源码分析-002(js门类判断)
热度:14 发布时间:2012-11-22 00:16:41.0
相关解决方案
- Extjs grid 失去选中行的列数据
- extjs 后台有数据,但是返回到页面为空,jsonStore加载错误,这是咋回事
- 【EXTJS】iframe里嵌套ext.window,怎样使ext.window弹出到iframe外,该怎么解决
- Tomcat + extjs 入门有关问题
- extjs ColumnModel 怎么实现表格中的数据小数点对齐
- Extjs 变量前的一个加号代表什么意思?解决方法
- extjs grid 怎么实现 行选中变色
- EXTJS grid的getView的refresh步骤报this.grid为空或不是对象
- EXTJS grid的getView的refresh方法报this.grid为空或不是对象解决办法
- ExtJs ComboBox 上拉数据较多时,怎么提供模糊搜索
- extjs window 弹出框有关问题 怪事
- ExtJs ComboBox 下拉数据较多时,怎么提供模糊搜索
- EXTJS GridPanel怎么设置多选
- EXTJS 在 IE 中 数据丢失。求解决方法。
- extjs grid 动态设置行单元格可编辑
- EXTJS DateField 效果显示解决方法
- Extjs Menu 实现动态多级菜单
- ExtJs ComboBox 上拉数据较多时,怎么提供模糊搜索
- Extjs TreeStore 的施用
- Extjs TreeStore 的应用
- 会用jquery,dwr,再有没有必要学习dojo,extjs
- extjs+php ,大家来看看是小弟我的json输出的有关问题,还是小弟我的extjs没有写对呢
- extjs grid表的显示有关问题
- extJS 在IE8里边什么都不显示
- EXTJS 显示图片有关问题 来个大神指教下 多谢
- Extjs 前后台数据交互有关问题
- ExtJS 怎么嵌入百度mapAPI
- EXTJS 页面得不到JSON值解决方案
- ExtJS 4 window.Window窗体怎么调用用构造方法传递过来的值
- Extjs textfield 只读的景况