One of the best aspects of jQuery is its light weight. I have really taken advantage of some of its built in Utilities such as jQuery.extend() and jQuery.map(). I am definitely against bloated software, but I find myself writing these functions time and again. They are pretty utilitarian and not too huge. Just a suggestion (code borrowed from Crockford's Remedial JavaScript)
1. A better typeof function that actually returns 'array' for an array instead of 'object':
function typeOf(value) {
var s = typeof value; if (s === 'object') {
if (value) {
if (typeof value.length === 'number' &&
!(value.propertyIsEnumerable('length')) && typeof value.splice === 'function') {
s = 'array';
}
} else {
s = 'null';
}
} return s;
}
2. A simple isEmpty function that returns a boolean:
function isEmpty(o) {
var i, v; if (typeOf(o) === 'object') {
for (i in o) {
v = o[i]; if (v !== undefined && typeOf(v) !== 'function') {
return false;
}
}
} return true;
}
分享到:
相关推荐
•Deferred:当typeof( target)=='object'时,Deferred.promise( target)才能正常工作 •Event:使用委托事件和伪类时的性能衰退问题 •Misc:修复了一些兼容问题,并进行了优化 •Offset:在BlackBerry5和iOS3上...
jQuery.query = new function () { var is = function (o, t) { return o != undefined && o !== null && (!!t ? o.constructor == t : true); }; var parse = function (path) { var m, rx = /\[([^[]*)\]/g, ...
if (a && typeof a == "function" && jQuery.fn.ready) return jQuery(document).ready(a); ``` 这段代码检查第一个参数 `a` 是否为函数。如果是,那么这实际上是一个简写形式的 `$(document).ready()` 调用,意味...
if(typeof(_rollback) == "string"){ options.target = _rollback; } options.beforeSubmit = function(formData, jqForm, options){ $('#'+_formId + " :input").blur(); if($('#'+_formId).errors....
5.typeof和数据类型转换.md
js表单源码 jquery.form.rar 简单实用的工具 花了很多搞到的。珍惜使用 (function (factory) { "use strict"; if (typeof define === 'function' && define.amd) { // using AMD; register as anon module ...
// Open a new window and print selected content var w = window.open(); w.[removed](content); w.document.close(); return printFrame(w); } function isNode(o) { /* ...
if (typeof jQuery == 'undefined') { // jQuery 未加载 } else { // jQuery 已加载 } ``` 这种方法更严谨一些,通过判断`jQuery`的类型是否为`undefined`来确定jQuery是否已加载。这种方法同样适用于检测任何...
可以使用`if (typeof jQuery !== 'undefined')`进行检查。 - **设置默认选项**:创建一个对象来存储插件的默认配置。 - **链式调用**:返回`this`,以便于插件方法可以链式调用其他jQuery方法。 - **执行功能**:在...
然而,`typeof`在某些情况下可能不准确,例如,`typeof null`会返回`"object"`,而`typeof function`则返回`"function"`,这可能会导致混淆。 `jQuery.getType`函数解决了这些潜在的问题。它提供了一个更加可靠的...
} else if (typeof method === 'object' || !method) { return methods.init.apply(this, arguments); } else { $.error('Method ' + method + ' does not exist on jQuery.hilight'); } }; })(jQuery); ``` ...
在JavaScript编程中,`JQuery.extend` 是一个非常重要的功能,它允许我们合并或扩展一个对象的属性到另一个对象上,而不会改变原有对象。在本文中,我们将深入理解这个概念,并模仿 `JQuery.extend` 来创建一个...
if ( typeof selector === "string" ) { // Are we dealing with HTML string or an ID? var match = quickExpr.exec( selector ); // Verify a match, and that no context was specified for #id if...
在处理前端开发中页面间的URL传值时,我们经常会使用jQuery.query.js这样的JavaScript库来解析URL中的查询字符串。这个库允许开发者方便地从URL中获取参数值,但在使用过程中可能会遇到一些问题。本文将针对使用...
Deferred:当typeof( target)=='object'时,Deferred.promise( target)才能正常工作 Event:使用委托事件和伪类时的性能衰退问题 Misc:修复了一些兼容问题,并进行了优化 Offset:在BlackBerry5和iOS3上使用会抛...
typeof t,o = e.document,a = e.location,s = e。 jQuery,u = e。$,l = {},c = [],p =“ 1.9.1”,f = c.concat,d = c.push,h = c.slice,g = c.indexOf, m = l.toString,y = l.hasOwnProperty,v = p....
if (typeof jQuery == 'undefined') { document.write(unescape("%3Cscript src='/skin/mobile/js/jquery.min.js' type='text/javascript'%3E%3C/script%3E")); } ``` 在这段代码中,我们首先尝试加载百度CDN上...
= clearForm && typeof(clearForm) != "undefined") { clearForm.reset(); } } ``` 这个方法接受一个参数 `formId`,它是需要被清空的表单的 ID。通过调用 `reset()` 方法可以轻松地清空表单的所有字段。 ##### ...
废话不多说了直接奔入主题了。 jQuery.fn.find( selector ) find接受一个参数表达式...if ( typeof selector !== "string" ) { self = this; return this.pushStack( jQuery( selector ).filter(function() {