Jquery extend 函数
extend函数: 给对象添加新属性:js插件经常使用来配置参数
var result = $.extend({},item,item1);
- {}:item和item1合并后的结果
- item:默认属性
- item1:新增属性,若item1与item属性重合则会覆盖item1属性
<span id="Test"></span>
var item={"name":"olive","age":23};
var item1={"name":"Momo",sex:"gril"};
var result=$.extend({},item,item1);
console.log(JSON.stringify(result));
$("#Test").text(JSON.stringify(result))
结果:
分析:
结果表明item1 name属性覆盖item name属性,并且item和item1对象的不重叠属性相互不会产生影响,会统一由result对象继承,很多js框架都是通过设置默认的配置,然后通过extend函数,用户可以自定义相关配置,从而达到框架个性化配置
Jquery each 函数
界面
<input type="button" id="b1" value="方法1"><br>
<input type="button" id="b2" value="方法2"><br>
<input type="button" id="b3" value="方法3"><br>
<select size=3 multiple="multiple">
<option>美国</option>
<option>中国</option>
<option>德国</option>
<option>法国</option>
<option>德国</option>
<option>法国</option>
<option>英国</option>
</select>
js操作逻辑
//Jquery each函数的第1种用法:最常见
$("#b1").click(function(){
$("select option:selected").each(function(){
//alert($(this).val()); //this表示当前数组objs的成员对象(dom对象)
alert(this.value);
});
});
//Jquery each函数的第2种用法
$("#b2").click(function(){
var $objs=$("select option:selected");
$.each($objs,function(){
alert(this.value);
});
});
//Jquery each函数的第3种用法:如果需要遍历显示数组及下标,该方法比较实用
$("#b3").click(function(){
var $objs=$("select option:selected");
$.each($objs,function(i,item){ //item表示objs的成员变量
//alert(item.value);
alert("第"+(i+1)+"个国家:"+$(item).val());
});
});
效果: