json物件以及jQuery $.extend和$.fn.extend的區別
阿新 • • 發佈:2018-12-10
1.1json物件的三種格式?
物件格式:
var json1={sid:'s01',age:'18',name:'名字'}
alert(json1.sid);
你可以這樣理解這種和java物件差不多,屬性對應值,使用的時候物件名點屬性名就可以了
1.2陣列格式
var jsonArray=[1,2,3,4];
$(json2).each(function(index,items){
alert(items);
})
這種就和java裡的陣列差不多,理解就行
1.3混合模式
其實就是把第一種和第二種結合,可以理解為map集合String為鍵Object為值裡面放了物件和集合。
因為json物件幾乎都是由後臺上傳到前臺的,所以有時候判斷有沒有值不方便用alert一個一個的輸出所以谷歌瀏覽器
有一個console.log()用來輸出在瀏覽器的控制檯可以看到
var json02={hooby:[1,2,3,4],sid:"s01"}
console.log(json02);
2. $.extend和$.fn.extend
$.extend(obj1,obj2,obj3[,...])
將obj2和obj3的值擴充至obj1中相同的鍵值會覆蓋 還是上程式碼吧
var json1={sid:'s01',age:'18',name:'名字'}; var json2={sid:'s02',age:'19',adress:'地址'}; $.extend(json1,json2) console.log(json1)
結果:
2.1$.extend()也可以給jQuery類加上方法
$.extend({
hello:function(){
alert("nihao ")
}
});
$.hello();
結果:
這個還有一種寫法效果也是一樣的
$.method=function(options){
alert("這也是一種寫法");
};
2.2$.fn.extend可以理解給jQuery加上例項方法
$.fn.extend({ hello:function(){ alert(this.text()) } }); $("#sp").hello(); <span id="sp">hello_word</span>
結果:
也可以這麼寫
$.fn.method=function(options){...};