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 相关文章推荐
jQuery TextBox自动完成条
Jul 22 Javascript
浅析jquery某一元素重复绑定的问题
Jan 03 Javascript
javascript Promise简单学习使用方法小结
May 17 Javascript
jQuery 获取页面li数组并删除不在数组中的key
Aug 02 Javascript
JS实现浏览上传文件的代码
Aug 23 Javascript
JavaScript实现树的遍历算法示例【广度优先与深度优先】
Oct 26 Javascript
angularjs 动态从后台获取下拉框的值方法
Aug 13 Javascript
js根据json数据中的某一个属性来给数据分组的方法
Oct 08 Javascript
原生js实现可兼容PC和移动端的拖动滑块功能详解【测试可用】
Aug 15 Javascript
vue深度监听(监听对象和数组的改变)与立即执行监听实例
Sep 04 Javascript
详解ES6中class的实现原理
Oct 03 Javascript
VUE之图片Base64编码使用ElementUI组件上传
Apr 09 Vue.js
浅谈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
玩家交还《星际争霸》原始码光盘 暴雪报以厚礼
2017/05/05 星际争霸
gd库图片下载类实现下载网页所有图片的php代码
2012/08/20 PHP
php对大文件进行读取操作的实现代码
2013/01/23 PHP
smarty 缓存控制前的页面静态化原理
2013/03/15 PHP
php中base_convert()进制数字转换函数实例
2014/11/20 PHP
PHP实现指定字段的多维数组排序函数分享
2015/03/09 PHP
PHP图像处理类库MagickWand用法实例分析
2015/05/21 PHP
CI分页类首页、尾页不显示的解决方法
2016/03/28 PHP
PHP实现将多个文件中的内容合并为新文件的方法示例
2017/06/10 PHP
ThinkPHP5.1+Ajax实现的无刷新分页功能示例
2020/02/10 PHP
jquery下操作HTML控件的实现代码
2010/01/12 Javascript
某人初学javascript的时候写的学习笔记
2010/12/30 Javascript
JavaScript获取元素尺寸和大小操作总结
2015/02/27 Javascript
jQuery简单实现图片预加载
2015/04/20 Javascript
jQuery+jsp实现省市县三级联动效果(附源码)
2015/12/03 Javascript
Angularjs中UI Router的使用方法
2016/05/14 Javascript
实例讲解JavaScript中instanceof运算符的用法
2016/06/08 Javascript
seajs模块之间依赖的加载以及模块的执行
2016/10/21 Javascript
Vue中"This dependency was not found"问题的解决方法
2018/06/19 Javascript
node中使用es6/7/8(支持性与性能)
2019/03/28 Javascript
vue实现图片懒加载的方法分析
2020/02/05 Javascript
Vue中 axios delete请求参数操作
2020/08/25 Javascript
解决新建一个vue项目过程中遇到的问题
2020/10/22 Javascript
[01:14:35]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第一局
2016/02/26 DOTA
python根据京东商品url获取产品价格
2015/08/09 Python
对python实现二维函数高次拟合的示例详解
2018/12/29 Python
对python调用RPC接口的实例详解
2019/01/03 Python
Python 抓取微信公众号账号信息的方法
2019/06/14 Python
详解利用OpenCV提取图像中的矩形区域(PPT屏幕等)
2019/07/01 Python
python pickle存储、读取大数据量列表、字典数据的方法
2019/07/07 Python
详解基于python的多张不同宽高图片拼接成大图
2019/09/26 Python
哥伦比亚最大的网上商店:Linio哥伦比亚
2016/09/25 全球购物
普通大学毕业生自荐信范文
2014/02/23 职场文书
党建工作经验交流材料
2014/05/25 职场文书
2016大一新生军训心得体会
2016/01/11 职场文书
导游词之包公祠
2019/11/25 职场文书