首先,我們獲取對象的屬性值有兩種方式:
1:對象名.屬性名='xxx'澡罚,? 2:對象名['xxx']='xxx',
主要有以上的兩種方式伸但,如圖:
瀏覽器控制臺返回的結(jié)果如圖:
接下里我們就正式開始我們今天所要實現(xiàn)的對象轉(zhuǎn)為字符串
首先我們要假設(shè)一個對象:
//定義一個手機(jī)對象 let phone = { name:"小米10",color:'紅色',size:'1000*200*500',price:'2999'}
//轉(zhuǎn)成下面的字符串? ? ? "name=小米10&color=紅色&size=1000*200*500&price=2999"
在這里補(bǔ)充幾點:
1:for? in? 循環(huán) , 可以循環(huán)出對象里面的所有的key留搔,(key就是屬性名)砌烁;
? ? ? ? 例:for(let key in phone)? ? ? ? ? ? ? ? ? ? ? ? ? ?
2:Object.keys(指定的對象),該方法可以獲取指定對象的所有key催式,返回值是一個數(shù)組;? ? ? 3:Object.values(指定的對象)避归,該方法可以獲取指定對象的所有的value,返回值是一個數(shù)組梳毙;
對象轉(zhuǎn)為字符串哺窄,我這邊介紹兩種方法,可以看一下哪一種方法適合自己的:
第一種方法:首先我們根據(jù)這組對象? ?let phone = { name:"小米10",color:'紅色',size:'1000*200*500',price:'2999'}? ? 先設(shè)置一個一個空的數(shù)組? let? ?arr = []? 這一組空數(shù)組然后我們在根據(jù)for in 循環(huán)循環(huán)出對象的每一個屬性名,然后再通過 arr.push()
let? arr =[] ; for(let key in phone ){arr.push(key+'='+phone[key])};let str = arr.join('&');console.log(str);
圖1:
效果如圖:
圖2:
個人覺得第一種方法比較繁瑣不如接下來的第二個方法比較簡單粗暴:
let arr1 = []
//Object.keys(phone)可以把對象的每一個屬性名也就是key,返回的值是數(shù)組 生年,然后可以直接在通過forEach()方法就可以了
? ? ? ? Object.keys(phone).forEach(key=>{
? ? ? ? ? ? arr1.push([key,phone[key]].join('='))
? ? ? ? })
? ? ? ? console.log(arr1);
? ? ? ? let str1 = arr1.join('&')
? ? ? ? console.log(str1);
效果圖:
實現(xiàn)的效果如圖: