Js-$.extend扩展方法使方法参数更灵活
在做JS开发时,我们将第三方复杂的插件进行封装,然后对外公开一个很简单的方法接口,这是开发时常用的方法,在JS里,我们的方法参数通常使用JQ的$.extend 扩展方法来实现
代码如下:
function extend(arr) {
arr = $.extend({ name: 'zzl', sex: 'male', age: 31 }, arr || {});
alert("[Name:]" + arr.name + "[Sex:]" + arr.sex + "[Age:]" + arr.age);
}
<a href="#" onclick="extend();return false;">extends</a>输出内容为:
即如果我们没有为arr指定值,它会把默认的值进行输出,如果我们为arr对象的某个属性赋值,结果会怎样?
代码如下:
<a href="#" onclick="extend({name:'占占'});return false;">extends</a>
上面代码,我们改变了name属性的性,结果输出为:
即,它只修改了指定属性的值,对象的其它值保持为原来的默认值。
JS中的||运算符与C#中的||作用相同,都是“逻辑或”,而在本例中它的用法是,如果arr对象为空,然后将{}赋值给它,这个功能类似于C#里的
??运算符,所以JS里的||挺强大,呵呵。
相关推荐
-
PHP获取当前日期和时间及格式化方法参数
使用函式 date() 实现 复制代码 代码如下: <?php echo $showtime=date("Y-m-d H:i:s");?> 显示的格式: 年-月-日 小时:分钟:秒 相关时间参数: a - "am" 或是 "pm" A - "AM" 或是 "PM" d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31" D - 星期几
-
Java方法参数是引用调用还是值调用?
方法调用(call by) 是一个标准的计算机科学术语.方法调用根据参数传递的情况又分为值调用( call by reference ) 和引用调用( call by value ) .江湖上有很多关于这两种调用的定义 ,最通常的说法是传递值的是值调用,传递地址的是引用调用.这其实很不恰当,这种 这些说法很容易让我们联想到Java的对象参数传递是引用调用,实际上,Java的对象参数传递仍然是值调用 . 我们首先用一段代码来证实一下为什么Java的对象参数传递是值调用. public class
-
对Java中传值调用的理解分析
本文实例分析了Java中的传值调用.分享给大家供大家参考.具体分析如下: Java以引用的方式操作对象实例 可以确认的是Java中操作对象的方式是以引用的方式操作对象.为了更深刻的了解这点我写了如下代码: 首先定义一个自定义类型 复制代码 代码如下: public class Person { String name; Person(String name){ this.name = name; } } 这里name默认是
-
batchcollect pagecollect来自官方杰奇jieqi定时采集配置方法参数详解第1/2页
前言 要实现采集,默认方式是根据配置好的采集规则,在浏览器提交相应的参数即可完成后面的采集入库全部动作. 而实现定时采集,与人工在浏览器提交有些区别,主要分两大步骤: 一.编写采集的url和相关参数,访问这个url即可实现想要的采集模式.(这个url直接在浏览器提交同样可以实现采集) 二.把定时访问这个url的功能加到系统的定时任务里面,实现无人值守的定时采集. 具体实现方法请参考下面内容: 1.对采集配置文件的解释 任何一个采集都会用到两个采集配置文件(跟后台采集规则配置对应),都可以用文本编
-
JQuery中$.ajax()方法参数详解及应用
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持. timeout: 要求为Number类型的参数,设置请求超时时间(毫秒).此设置将覆盖$.ajaxSetup()方法的全局设 置. async:要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求. 如果需要发送同步请求,请将此选项
-
Jquery之Bind方法参数传递与接收的三种方法
方法一. function GetCode(event) { alert(event.data.foo); } $(document).ready(function() { $("#summary").bind("click", {foo:'abc'} ,GetCode); }); 方法二. 函数句柄 $("#summary").bind("click", function() { GetCode("abc"
-
Js-$.extend扩展方法使方法参数更灵活
在做JS开发时,我们将第三方复杂的插件进行封装,然后对外公开一个很简单的方法接口,这是开发时常用的方法,在JS里,我们的方法参数通常使用JQ的$.extend 扩展方法来实现 复制代码 代码如下: function extend(arr) { arr = $.extend({ name: 'zzl', sex: 'male', age: 31 }, arr || {}); alert("[Name:]" + arr.name + "[Sex:]" + arr.sex
-
python安装oracle扩展及数据库连接方法
本文实例讲述了python安装oracle扩展及数据库连接方法.分享给大家供大家参考,具体如下: 下载: cx_Oracle下载地址:http://cx-oracle.sourceforge.net/ instantclient-basic下载地址:http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html window环境: python27 oracle10 需要软件: cx_Ora
-
layer弹出层扩展主题的方法
弹出层插件layer确实很强大,官方提供主题太少,但是提供扩展的方式,由于项目使用统一颜色风格,就想扩展一下.官方默认的三种: 1.白蓝(默认) layer.alert('内容');//默认 2.墨绿 layer.alert('内容', { icon: 1, skin: 'layui-layer-molv' }) 3.深蓝 layer.alert('内容', { icon: 1, skin: 'layui-layer-lan' }) ==========重点啦==================
-
vue-router的使用方法及含参数的配置方法
html router-link:跳转链接 参数to:就是跳转到的链接位置 二层链接 eg: <router-link to="/users/evan">/users/evan</router-link> 需要配置所对应的对应的children children所对应的参数 path:可分我固定的参数url 和带参数的 区别于 :(冒号) name:对应的参数的模块名称(动态传参数) component:可以传多个组件 eg: { path: '/', //
-
python根据给定文件返回文件名和扩展名的方法
本文实例讲述了python根据给定文件返回文件名和扩展名的方法.分享给大家供大家参考.具体分析如下: 这段代码可以根据文件的完整路径返回文件名和扩展名,python的函数可以同时返回两个值,用起来就更方便了 def GetFileNameAndExt(filename): import os (filepath,tempfilename) = os.path.split(filename); (shotname,extension) = os.path.splitext(tempfilename
-
C#动态加载dll扩展系统功能的方法
本文实例讲述了C#动态加载dll扩展系统功能的方法.分享给大家供大家参考.具体分析如下: 动态加载dll,主要是为了扩展功能,增强灵活性而实现的.主要通过xml配置,来获取所有要动态加载的dll,然后通过反射机制来调用dll中的类及其方法. using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Reflection; using System.Text; u
-
腾讯CMEM的PHP扩展编译安装方法
本文实例讲述了腾讯CMEM的PHP扩展编译安装方法.分享给大家供大家参考.具体如下: CMEM是什么? CMEM全称为Cloud Memory,是腾讯提供的高性能内存级持久化存储服务,适用于数据量小.访问量高.key-value存储的场景. CMEM基于一个存储键/值对的hashmap,数据使用内存存储,并保证数据的持久性. CMEM PHP Extension是什么? CMEM基于标准的Memcached协议以及接口,只是将数据获取接口增加返回值设定. Memcached的Get协议没有设计返
-
修改或扩展jQuery原生方法的代码实例
修改或者扩展jQuery的方法代码实例: 毫无疑问,jQuery是一款功能强大且使用方便的类库. 从它的广泛应用可以证实上面的观点,但是正所谓人无完人,金无足赤,jQuery也是如此,并非在任何时候或者场合都能够完美的完成我们的任务,所以有事以后就需要对jQuery原有的方法进行扩展修改,但是最好方法仍然具有原来的功能. 代码实例: 复制代码 代码如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-
-
mybatis-plus生成mapper扩展文件的方法
阅读提示 具有mybatis基础,熟练使用mybatis-plus. 概述 我们都知道,mybatis-plus是一个mybatis的增强工具,为简化开发.提高效率而生,我们经常使用mybatis-plus生成controller.service.mapper等文件,对于简单的curd,可以直接使用mybatis-plus封装好的方法. 然而,我们经常有这样那样的需求,需要额外编写sql实现,如果直接在mapper.xml文件中编写,一旦数据库表结构改动需要重新生成文件就悲催了,不得
-
java方法重载和参数类型自动提升方式
目录 方法重载和参数类型自动提升 方法重载的意思是 对于基本类型数据而言 java基本类型重载 1.重载 2.基本类型重载 3.代码示例 4.重载解析过程 5.可行集获取的原则 方法重载和参数类型自动提升 方法重载的意思是 一个类中可以由多个方法具有相同的名字,但这些方法的参数必须不同, 参数不同是指满足下列之一: 参数的个数不同 参数的个数相同,但参数列表中对相应的某个参数的类型不同 对于基本类型数据而言 参数类型存在自动提升 以byte a = 1为例,存在如下自动提升方式: byte–>
随机推荐
- jQuery实现感应鼠标动画效果自动伸长的输入框实例
- JQUERY复选框CHECKBOX全选,取消全选
- JavaScript中正则表达式判断匹配规则及常用方法
- JavaScript 性能优化小结
- 让alert不出现弹窗的两种方法
- jsp dwr级联效果代码
- JS & JQuery 动态添加 select option
- 详解在Python中处理异常的教程
- Linux 下rpm命令参数详解
- Linux服务器无法登陆问题的解决方法
- 详解Python当中的字符串和编码
- ip修改后orcale服务无法启动问题解决
- jQuery简单倒计时效果完整示例
- jquery无刷新验证邮箱地址实现实例
- 微信小程序 教程之wxapp视图容器 swiper
- Android开发之天气趋势折线图
- Android View添加 Listener 实例代码
- List the Stored Procedures in a SQL Server database
- JS中offset和匀速动画详解
- 易语言外形框组件使用技巧方法