jQuery中extend函数详解


Posted in Javascript onJuly 13, 2015

1.$.extend({},defaults, options)

这样做的目的是为了保护包默认参数。也就是defaults里面的参数。

做法是将一个新的空对象({})做为$.extend的第一个参数,defaults和用户传递的参数对象紧随其后,这样做的好处是所有值被合并到这个空对象上,保护了插件里面的默认值。

$.fn.myPlugin = function(options) {
  var defaults = {
    'color': 'red',
    'fontSize': '12px'
  };
  var settings = $.extend({},defaults, options);//将一个空对象做为第一个参数
  return this.css({
    'color': settings.color,
    'fontSize': settings.fontSize
  });
}

2.代码混淆与压缩

你下载的插件里面,一般都会提供一个压缩的版本一般在文件名里带个'min'字样。也就是minified的意思,压缩浓缩后的版本

这里的压缩不是指代码进行功能上的压缩,而是通过将代码里面的变量名,方法函数名等等用更短的名称来替换,并且删除注释(如果有的话)删除代码间的空白及换行所得到的浓缩版本。同时由于代码里面的各种名称都已经被替代,别人无法阅读和分清其逻辑,也起到了混淆代码的作用。

压缩的好处:1.代码量变少,加快加载速度,提高性能

2.防止别人盗用代码

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
javaScript对象和属性的创建方法
Jan 15 Javascript
JavaScript 函数调用规则
Sep 14 Javascript
JavaScript 以对象为索引的关联数组
May 19 Javascript
EasyUI实现二级页面的内容勾选的方法
Mar 01 Javascript
JS判断网页广告是否被浏览器拦截过滤的代码
Apr 05 Javascript
实例解析jQuery插件EasyUI最常用的表单验证规则
Nov 29 Javascript
javascript+html5+css3自定义提示窗口
Jun 21 Javascript
vue2.0 父组件给子组件传递数据的方法
Jan 15 Javascript
React Native中NavigatorIOS组件的简单使用详解
Jan 27 Javascript
ndm:NPM的桌面GUI应用程序
Oct 15 Javascript
微信小程序实现滑动切换自定义页码的方法分析
Dec 29 Javascript
JS数组及对象遍历方法代码汇总
Jun 16 Javascript
浅谈javascript原型链与继承
Jul 13 #Javascript
jQuery实现自定义checkbox和radio样式
Jul 13 #Javascript
javascript作用域问题实例分析
Jul 13 #Javascript
javascript中使用正则表达式清理table样式的代码
Apr 01 #Javascript
jquery实现图片上传之前预览的方法
Jul 11 #Javascript
JavaScript使用RegExp进行正则匹配的方法
Jul 11 #Javascript
javascript中JSON对象与JSON字符串相互转换实例
Jul 11 #Javascript
You might like
删除PHP数组中的重复元素的实现代码
2017/04/10 PHP
PHP使用curl_multi实现并发请求的方法示例
2018/04/29 PHP
基于OO的动画附加插件,可以实现弹跳、渐隐等动画效果 分享
2013/06/24 Javascript
使用js判断控件是否获得焦点
2014/01/03 Javascript
JavaScript实现文本框中默认显示背景图片在获得焦点后消失的方法
2015/07/01 Javascript
JavaScript调用浏览器打印功能实例分析
2015/07/17 Javascript
JavaScript多并发问题如何处理
2015/10/28 Javascript
jstree的简单实例
2016/12/01 Javascript
Vue.js数据绑定之data属性
2017/07/07 Javascript
JS实现图片手风琴效果
2020/04/17 Javascript
详解vue-cli项目中用json-sever搭建mock服务器
2017/11/02 Javascript
node省市区三级数据性能测评实例分析
2019/11/06 Javascript
vue实现浏览器全屏展示功能
2019/11/27 Javascript
windows下python模拟鼠标点击和键盘输示例
2014/02/28 Python
Python break语句详解
2014/03/11 Python
基于python中pygame模块的Linux下安装过程(详解)
2017/11/09 Python
对python pandas读取剪贴板内容的方法详解
2019/01/24 Python
树莓派实现移动拍照
2019/06/22 Python
python挖矿算力测试程序详解
2019/07/03 Python
Python random库使用方法及异常处理方案
2020/03/02 Python
Python把图片转化为pdf代码实例
2020/07/28 Python
python脚本第一行如何写
2020/08/30 Python
HTML5手机端弹出遮罩菜单特效代码
2016/01/27 HTML / CSS
aden + anais英国官网:美国婴儿贴身用品品牌
2019/09/08 全球购物
Puma印度官网:德国运动品牌
2019/10/06 全球购物
为您搜罗全球潮流時尚品牌:HBX
2019/12/04 全球购物
探亲邀请信范文
2014/01/30 职场文书
给学校的建议书范文
2014/05/15 职场文书
假面舞会策划方案
2014/05/29 职场文书
社区党员群众路线教育实践活动心得体会
2014/11/03 职场文书
2015元旦节寄语
2014/12/08 职场文书
小学校园广播稿
2015/08/18 职场文书
2016高校自主招生自荐信范文
2016/01/28 职场文书
Redis高级数据类型Hyperloglog、Bitmap的使用
2021/05/24 Redis
Python中第三方库Faker的使用详解
2022/04/02 Python
用PYTHON去计算88键钢琴的琴键频率和音高
2022/04/10 Python