jQuery.isPlainObject()

用途

jQuery.isPlainObject()函数用于检查一个对象是否为普通对象(使用{}或者new Object创建)。

语法

jQuery.isPlainObject(object)

参数

需要进行判断是否为普通对象的对象。

注意:宿主对象(或由浏览器宿主环境使用的对象来完成ECMAScript的执行环境)有许多不一致的地方,这些不一致的特性很难被有力地检测到跨平台。因此,$.isPlainObject()在某些情况下可能会在不同的浏览器中得出不同的结果。

返回值

jQuery.isPlainObject()返回一个布尔值,如果指定的参数是普通的对象,则返回true,否则返回false。

示例说明

$.isPlainObject({});    // true
$.isPlainObject(new Object());    // true
$.isPlainObject({name:"CodeMonkey"});    // true

$.isPlainObject("CodeMonkey");    // false
$.isPlainObject(true);    // false
$.isPlainObject(12);    // false
$.isPlainObject([]);     // false
$.isPlainObject(function(){});    // false

$.isPlainObject(document.location);    // Chrome,Firefox中返回false,IE中返回true

function Person(){ this.name = "CodeMonkey"; }
$.isPlainObject(new Person());  // false
时间: 2024-10-13 05:53:57

jQuery.isPlainObject()的相关文章

jQuery静态方法isPlainObject,isEmptyObject方法使用和源码分析

isPlainObject方法 测试对象是否是纯粹的对象(通过 "{}" 或者 "new Object" 创建的) 示例: //测试是否为纯粹的对象 jQuery 代码: jQuery.isPlainObject({}) // true jQuery.isPlainObject("test") // false 源码分析: isPlainObject: function( obj ) { // Must be an Object. // Beca

jQuery源代码学习之六——jQuery数据缓存Data

一.jQuery数据缓存基本原理 jQuery数据缓存就两个全局Data对象,data_user以及data_priv; 这两个对象分别用于缓存用户自定义数据和内部数据: 以data_user为例,所有用户自定义数据都被保存在这个对象的cache属性下,cache在此姑且称之为自定义数据缓存: 自定义数据缓存和DOM元素/javascript对象通过id建立关联,id的查找通过DOM元素/javascript元素下挂载的expando属性获得 话不多说,直接上代码.相关思路在代码注释中都有讲解

jquery的2.0.3版本源码系列(3):285-348行,extend方法详解

目录 1 . jquery extend的基本使用 通过285行的源码 jQuery.extend = jQuery.fn.extend = function() { ,extend方法要么是直接挂在到jQuery的静态方法,要么是挂载到fn上其实就是原型上(参考283行的赋值操作)的实例方法.extend方法可以传一个对象,类似于插件的方式,也可以传多个对象进行拷贝. <script src="js/jquery-2.0.3.js"></script> <

jQuery编程中的一些核心方法简介

调用 jQuery 对象的方法很简单: $('h1').remove(); 大多数 jQuery 方法都是像上面这样被调用的,这些方法都位于 $.fn 命名空间内,这些方法称为 jQuery 对象方法. 但是也有一些方法不需要依赖于选择器的结果集,这些方法位于 jQuery 命名空间内,这些方法称为 jQuery 核心方法.如果觉得不好理解,记住下面两条即可: 所有 jQuery 选择器的方法都位于 $.fn 命名空间内. $ 内的方法一般都是一些实用的功能性方法,这些方法不依赖选择器,这些方法

谜一样的jquery之$选择器

jquery是一个强大的js类库,提供了很多便利的操作方法并兼容不同的浏览器,一旦使用便欲罢不能,根本停不下来,今天我们就来解读一下这个神秘的jquery源代码. 前几天思考再三,自己尝试着封装了一下jquery的$选择器,然而并不完善,我只对id,class,和标签选择器进行了封装,发现其实如果实现浅层的封装那么我们很容易就能够实现,但是一旦我们尝试着选择器的层次嵌套就会出来很多大大小小的坑! 下面我们先来看一下我个人封装的jquery的选择器部分. window.$ = function (

从零开始,DIY一个jQuery(2)

在上篇文章我们简单实现了一个 jQuery 的基础结构,不过为了顺应潮流,这次咱把它改为模块化的写法,此举得以有效提升项目的可维护性,因此在后续也将以模块化形式进行持续开发. 模块化开发和编译需要用上 ES6 和 rollup,具体原因和使用方法请参照我之前的<冗余代码都走开——前端模块打包利器 Rollup.js 入门>一文. 本期代码均挂在我的github上,有需要的童鞋自行下载. 1. 基本配置 为了让 rollup 得以静态解析模块,从而减少可能存在的冗余代码,我们得用上 ES6 的解

jQuery的封装和扩展方式

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> </body> <script type="text/javascript"> (function(){ function jQuery(){ // 一个对象工厂,以后生成新对象不用

jQuery源码学习(2):选择器初窥

选择器初窥 代码架构: jQuery选择器可以依照传入数据的类型分为五大类: 传入字符串:$("div"), $("#id"), $(".div1"),$(".div p.title") 传入html代码:$("<div></div>"), $("<div>1</div><div>2</div>") 传入对象:$(d

【深入浅出jQuery】源码浅析--整体架构(转)

最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,让你感叹代码之美. 其结构明晰,高内聚.低耦合,兼具优秀的性能与便利的扩展性,在浏览器的兼容性(功能缺陷.渐进增强)优雅的处理能力以及 Ajax 等方面周到而强大的定制功能无不令人惊叹. 另外,阅读源码让我接触到了大量底层的知识.对原生JS .框架设计.代码优化有了全新的认识,接下来将会写一系列关于 jQuery 解析的文章. 我在 github 上关于 jQuery 源码的全文注解,感兴趣的可以围观一下