zoukankan      html  css  js  c++  java
  • jq expando && $.data()

    1.使用隐藏控件或者是js全局变量来临时存储数据,全局变量容易导致命名污染,隐藏控件导致经常读写dom浪费性能

    jQuery提供了自己的数据缓存方案,使用jQuery数据缓存方案,我们需要掌握$.data()、$.cache、$.expando、$.hasData()、$.removeData()。

    1.1  $.hasData()用来判断某个对象是否有附加的属性,可以给任何javascript对象和HTMLElement对象附加属性

    1.2  $.data()用来读取或者修改属性值

    1.3  $.removeData()用来删除已经添加的属性,这是为了释放内存,避免过多无用属性浪费内存

    1.4  为普通JS对象提供缓存时,jquery直接将数据保存在原始的JS对象上。此时会偷偷的给JS对象添加个属性 $.expando (expandable object 的缩写,表示可扩展的对象)

    2.  jQuery.expando 是一个字符串   

     expando: "jQuery" + ( jQuery.fn.jquery + Math.random() ).replace( /D/g, "" ),     

     jQuery19109145524849564901   (版本号1.9.1,$.fn  、  $.fn.jquery

    参考链接

    读jQuery之六(缓存数据)

    $.data()、$().data

  • 相关阅读:
    使用 PyCharm 远程调试 Django 项目
    (坑集)Python环境配置
    字典的使用
    列表的使用
    字符串的魔法
    php 文件函数
    php 时间函数
    php xajax库基本知识
    php header函数
    c++注释
  • 原文地址:https://www.cnblogs.com/justSmile2/p/9675520.html
Copyright © 2011-2022 走看看