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 判断浏览器是否支持SVG的代码
Mar 21 Javascript
Jquery+CSS3实现一款简洁大气带滑动效果的弹出层
May 15 Javascript
js截取固定长度的中英文字符的简单实例
Nov 22 Javascript
javascript中alert()与console.log()的区别
Aug 26 Javascript
JavaScript的代码编写格式规范指南
Dec 07 Javascript
JS实现鼠标滑过显示边框的菜单效果
Sep 21 Javascript
js实现非常棒的弹出div
Oct 06 Javascript
基于angular中的重要指令详解($eval,$parse和$compile)
Oct 21 Javascript
js与jquery分别实现tab标签页功能的方法
Nov 18 Javascript
layer.alert自定义关闭回调事件的方法
Sep 27 Javascript
微信小程序实现锚点功能
Nov 20 Javascript
Vue实现鼠标经过文字显示悬浮框效果的示例代码
Oct 14 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 下载保存文件保存到本地的两种实现方法
2013/08/12 PHP
PHP创建文件,并向文件中写入数据,覆盖,追加的实现代码
2016/03/25 PHP
Laravel如何使用Redis共享Session
2018/02/23 PHP
网站被恶意镜像怎么办 php一段代码轻松搞定(全面版)
2018/10/23 PHP
用于table内容排序
2006/07/21 Javascript
DHTML 中的绝对定位
2006/11/26 Javascript
JavaScript开发规范要求(规范化代码)
2010/08/16 Javascript
基于jquery实现的自动补全功能
2015/03/12 Javascript
精通JavaScript的this关键字
2020/05/28 Javascript
Node.js的MongoDB驱动Mongoose基本使用教程
2016/03/01 Javascript
jquery按回车键实现表单提交的简单实例
2016/05/25 Javascript
js自调用匿名函数的三种写法(推荐)
2016/08/19 Javascript
自定义require函数让浏览器按需加载Js文件
2016/11/24 Javascript
AngularJS 文件上传控件 ng-file-upload详解
2017/01/13 Javascript
微信小程序中用WebStorm使用LESS
2017/03/08 Javascript
前端构建工具之gulp的语法教程
2017/06/12 Javascript
详解vuex结合localstorage动态监听storage的变化
2018/05/03 Javascript
Python读写Excel文件的实例
2013/11/01 Python
Python struct模块解析
2014/06/12 Python
Python之日期与时间处理模块(date和datetime)
2017/02/16 Python
python实现可视化动态CPU性能监控
2018/06/21 Python
python常用库之NumPy和sklearn入门
2019/07/11 Python
余弦相似性计算及python代码实现过程解析
2019/09/18 Python
使用IPython或Spyder将省略号表示的内容完整输出
2020/04/20 Python
魔幻般冒泡背景的CSS3按钮动画
2016/02/27 HTML / CSS
HTML5+CSS3:3D展示商品信息示例
2017/01/03 HTML / CSS
海淘母婴商城:国际妈咪
2016/07/23 全球购物
TheFork葡萄牙:欧洲领先的在线餐厅预订平台
2019/05/27 全球购物
Tomcat中怎么使用log4j输出所有的log
2016/07/07 面试题
物业管理工作方案
2014/05/10 职场文书
物流管理专业自荐信
2014/06/23 职场文书
成品仓管员岗位职责
2015/04/01 职场文书
党员转正大会主持词
2015/07/02 职场文书
孕妇病假条怎么写
2015/08/17 职场文书
祝福语集锦:送给毕业同学祝福语
2019/11/21 职场文书
Redis高级数据类型Hyperloglog、Bitmap的使用
2021/05/24 Redis