日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

前端---JavaScript基础2

發布時間:2024/1/23 javascript 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 前端---JavaScript基础2 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

    • 前端---JavaScript基礎2
      • 對象類型判斷
        • call函數
      • 對象屬性操作
        • 深拷貝方法

前端—JavaScript基礎2

重構以下代碼:(以面向對象的方式)

重構后:(其中this指針問題也可改成箭頭函數)

對象類型判斷



call函數

對象屬性操作

//對象屬性操作 //屬性增加 var obj = {}; obj.name = "jack"; obj['age'] = 20; var addr = "wh"; obj[addr] = "武漢"; //使用的變量 console.log(obj);//屬性刪除 var obj2 = {}; obj2.name = "aaaaa"; obj2['age'] = 22; delete obj2.name; console.log(obj2);//檢測屬性 var obj = {name:"bbb",age:23,action:function(){this.addr = "beijing"} } obj.action(); console.log(obj); //in console.log('name' in obj) //hasOwnProperty console.log(obj.hasOwnProperty('age'))//屬性枚舉 遍歷 var arr = ['a','b','c','d']; var obj = {name:"bbb",age:23} //for in for(var key in obj){//屬性名 屬性值console.log(key,obj[key]) } for(var v in arr){console.log(v,arr[v]) } //for for(var i=0;i<arr.length;i++){console.log(arr[i])//if(條件ok) 終止 return break; } //forEach 沒有返回值 arr.forEach(function(item,index){//不能終止console.log(item) }) //map -- 可修改數組的值 有返回值 var m = arr.map(function(item){ //循環每一個屬性 并返回改變后的屬性return item+1; }) //filter 過濾器 返回滿足條件的數組 var f = arr.filter(item){return item === 'c'; }) //every 返回true false 都必須滿足條件 var e = arr.every(item){return item === 'c'; }) //some 返回true false 滿足其中一個即可 var e = arr.every(item){return item === 'c'; }) //reduce var arr = [1,3,5,7]; //總數 當前數 var s = arr.filter(total,currentValue){return total+currentValue; },10) //10初始值//對象屬性拷貝 //對象序列化與反序列化 //JSON --- 瀏覽器中對象 var obj = {name:"bbb",age:23}; console.log(JSON.stringify(obj)); var str = '{name:"bbb",age:23}'; console.log(JSON.parse(str))


深拷貝方法

function deep(dest,ori){ //dest目標對象 ori源對象for(var i in ori){if(typeof ori[i] === 'object'){//遞歸 判斷是數組還是對象dist[i] = (ori[i].constructor === Array) ? []:{}; //初始化屬性deep(dest[i],ori[i]);}else{dest[i] = ori[i]; //非引用屬性}}return dest; }var a = deep({},Animal);

總結

以上是生活随笔為你收集整理的前端---JavaScript基础2的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。