欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js獲取json中key所對應(yīng)的value值的簡單方法

 更新時間:2020年06月17日 20:58:57   投稿:jingxian  
下面小編就為大家?guī)硪黄猨s獲取json中key所對應(yīng)的value值的簡單方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

實例如下:

<script type="text/javascript"> 
 getJson('age'); 
 
function getJson(key){ 
 var jsonObj={"name":"傅紅雪","age":"24","profession":"刺客"}; 
 
 
 //1、使用eval方法  
 var eValue=eval('jsonObj.'+key); 
 alert(eValue); 
 
 
 //2、遍歷Json串獲取其屬性 
 for(var item in jsonObj){ 
  if(item==key){ //item 表示Json串中的屬性,如'name' 
   var jValue=jsonObj[item];//key所對應(yīng)的value 
   alert(jValue); 
  } 
 } 
 
 
 //3、直接獲取 
 alert(jsonObj[''+key+'']); 
} 
</script> 

通過上邊三種方法就可以取到j(luò)son中key對應(yīng)的值

用js方式取得接口里面json數(shù)據(jù)的key和value值

大家在實際操作中難免遇到對接口的問題,想必對一些小白來說取得里面想要是數(shù)據(jù)也是很是頭疼,那么接下來我會結(jié)合接口實際情況教大家怎么取得里面相應(yīng)的數(shù)據(jù)

接口數(shù)據(jù)例如:(數(shù)據(jù)為 模擬數(shù)據(jù),json格式)

{
  "month": {
    "monthly": ["2018年4月", "2018年5月"]
  },
  "nameAndRateOperation": {
    "濟南華陽炭素有限公司": ["91.67", "91.67"],
    "濟南萬瑞炭素有限責(zé)任公司": ["84", "84"],
    "濟南龍山炭素有限公司": ["85.71", "85.71"],
    "德州歐萊恩永興碳素有限公司": ["70", "80"],
    "德州永興碳素有限公司": ["90", "90"],
    "德州乾海碳素有限公司": ["70", "75"],
    "濟南海川投資集團有限公司": ["81.25", "81.25"],
    "濟南匯豐炭素有限公司": ["86", "86"],
    "山東金利達碳素有限公司": ["86.68", "80"],
    "濟南澳海炭素有限公司": ["85", "85"]
  },
  "nameAndYield": {
    "濟南華陽炭素有限公司": ["1.2", "1.2"],
    "濟南萬瑞炭素有限責(zé)任公司": ["4", "4"],
    "濟南龍山炭素有限公司": ["2.4", "2.4"],
    "德州歐萊恩永興碳素有限公司": ["0.8", "1"],
    "德州永興碳素有限公司": ["0.67", "0.5"],
    "德州乾海碳素有限公司": ["0.2", "0.25"],
    "濟南海川投資集團有限公司": ["1.6", "1.6"],
    "濟南匯豐炭素有限公司": ["0.8", "0.8"],
    "山東金利達碳素有限公司": ["2", "2.5"],
    "濟南澳海炭素有限公司": ["4.33", "4.5"]
  },
  "nameAndDateTime": {
    "濟南華陽炭素有限公司": ["2018年4月", "2018年5月"],
    "濟南萬瑞炭素有限責(zé)任公司": ["2018年4月", "2018年5月"],
    "濟南龍山炭素有限公司": ["2018年4月", "2018年5月"],
    "德州歐萊恩永興碳素有限公司": ["2018年4月", "2018年5月"],
    "德州永興碳素有限公司": ["2018年4月", "2018年5月"],
    "德州乾海碳素有限公司": ["2018年4月", "2018年5月"],
    "濟南海川投資集團有限公司": ["2018年4月", "2018年5月"],
    "濟南匯豐炭素有限公司": ["2018年4月", "2018年5月"],
    "山東金利達碳素有限公司": ["2018年4月", "2018年5月"],
    "濟南澳海炭素有限公司": ["2018年4月", "2018年5月"]
  },
  "regionAndCompany": {
    "華東": ["德州歐萊恩永興碳素有限公司", "德州乾海碳素有限公司", "德州永興碳素有限公司", "山東金利達碳素有限公司", "濟南澳海炭素有限公司", "濟南海川投資集團有限公司", "濟南華陽炭素有限公司", "濟南匯豐炭素有限公司", "濟南龍山炭素有限公司", "濟南萬瑞炭素有限責(zé)任公司"]
  },
  "nameAndCapacity": {
    "濟南華陽炭素有限公司": ["6", "6"],
    "濟南萬瑞炭素有限責(zé)任公司": ["5", "5"],
    "濟南龍山炭素有限公司": ["7", "7"],
    "德州歐萊恩永興碳素有限公司": ["30", "30"],
    "德州永興碳素有限公司": ["20", "20"],
    "德州乾海碳素有限公司": ["20", "20"],
    "濟南海川投資集團有限公司": ["8", "8"],
    "濟南匯豐炭素有限公司": ["10", "10"],
    "山東金利達碳素有限公司": ["15", "15"],
    "濟南澳海炭素有限公司": ["10", "10"]
  },
  "storageWithCompany": {
    "濟南華陽炭素有限公司": ["0.8", "0.8"],
    "濟南萬瑞炭素有限責(zé)任公司": ["3.2", "3.2"],
    "濟南龍山炭素有限公司": ["2.2", "2.2"],
    "德州歐萊恩永興碳素有限公司": ["1.2", "1.2"],
    "德州永興碳素有限公司": ["0.5", "0.5"],
    "德州乾海碳素有限公司": ["0.15", "0.15"],
    "濟南海川投資集團有限公司": ["1", "1"],
    "濟南匯豐炭素有限公司": ["0.5", "1"],
    "山東金利達碳素有限公司": ["1.5", "1.5"],
    "濟南澳海炭素有限公司": ["2.5", "2.5"]
  }
}

json數(shù)據(jù)

獲取代碼

//取出來所有的地區(qū):華南華北....
            for (var key in data.regionAndCompany) {
              region.push(key);
            }
            // console.log(region)
            
            //接口取出來的倉儲的數(shù)組
            for (key in data.storageWithCompany) {
              storageWithCompany.push(data.storageWithCompany[key])
            }
            // console.log(storageWithCompany)

            // //接口取出來的產(chǎn)能的數(shù)組
            // for(key in data.nameAndCapacity){
            //   capacity.push(data.nameAndCapacity[key])
            // }
            // // console.log(capacity)

            //接口取出來的開工率的數(shù)組
            for (key in data.nameAndRateOperation) {
              rateOperation.push(data.nameAndRateOperation[key])
            }
            // console.log(rateOperation)

            //全部的公司名字
            for (key in data.nameAndRateOperation) {
              companyRateOperation.push(key);
            }
            // console.log(companyRateOperation)
            
            //全部的時間數(shù)據(jù),二維數(shù)組
            for (var key in data.nameAndDateTime) {
              date.push(data.nameAndDateTime[key])
            }
            // console.log(date)
            
            //全部的產(chǎn)量數(shù)組,二維,每個公司的產(chǎn)量是一個數(shù)組
            for (var key in data.nameAndYield) {
              yield.push(data.nameAndYield[key])
            }
            // console.log(yield)

再放上網(wǎng)上的方法

js中獲取object類型里鍵值的方法

最近遇到一個問題:

var obj = {"name1":"張三","name2":"李四"};
var key = "name1";
var value = obj.key;//得到了"undefined"
value = obj.name1;//得到了"張三"

其實我是想動態(tài)給key賦值,然后得到key為多少所對就的值。但這種做法行不通,obj.key會去找obj下key為"key"所對應(yīng)的值,結(jié)果當然是找不到嘍。
于是,我想到了js中遍歷對象屬性的方法:

function printObject(obj){
	//obj = {"cid":"C0","ctext":"區(qū)縣"};
	var temp = "";
	for(var i in obj){//用javascript的for/in循環(huán)遍歷對象的屬性
		temp += i+":"+obj[i]+"\n";
	}
	alert(temp);//結(jié)果:cid:C0 \n ctext:區(qū)縣
}

這樣,就可以清楚的知道js中一個對象的key和value分別是什么了。
回到剛才的問題,怎么動態(tài)給key賦值,然后以obj.key的方式得到對應(yīng)的value呢?
其實以上printObject中有提示,那就是用obj[key]的方法,key可以是動態(tài)的,這樣就解決了我上面提出的問題了。
最后說一下,還有一個方法也可以,那就是:eval("obj."+key)。

總結(jié):

js中想根據(jù)動態(tài)key得到某對象中相對應(yīng)的value的方法有二:

一、var key = "name1";var value = obj[key];
二、var key = "name1";var value = eval("obj."+key);

以上這篇js獲取json中key所對應(yīng)的value值的簡單方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 前端如何實現(xiàn)動畫過渡效果

    前端如何實現(xiàn)動畫過渡效果

    這篇文章主要介紹了前端如何實現(xiàn)動畫過渡效果,幫助大家更好的理解和學(xué)習(xí)前端開發(fā)網(wǎng)頁,感興趣的朋友可以了解下
    2021-02-02
  • JavaScript實現(xiàn)點擊切換功能

    JavaScript實現(xiàn)點擊切換功能

    這篇文章主要為大家詳細介紹了JavaScript實現(xiàn)點擊切換功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-01-01
  • JavaScript實現(xiàn)讀取上傳視頻文件的時長和第一幀畫面過程講解

    JavaScript實現(xiàn)讀取上傳視頻文件的時長和第一幀畫面過程講解

    當我們做一個后臺系統(tǒng)的音視頻管理模塊時,通常要限制文件的大小和類型,這篇文章主要介紹了JavaScript實現(xiàn)讀取上傳視頻文件的時長和第一幀畫面過程,需要詳細了解實現(xiàn)方法可以參考下文
    2023-05-05
  • 微信JSSDK上傳圖片

    微信JSSDK上傳圖片

    做過微信開發(fā)的都知道,在部分android機型里微信不支持網(wǎng)頁上傳圖片的,這是由于這些機型的文件上傳存在內(nèi)存泄漏,會導(dǎo)致微信閃退,所以微信內(nèi)置瀏覽器將文件上傳屏蔽,本篇文章給大家介紹使用微信jssdk如何上傳圖片,需要的朋友可以關(guān)注下
    2015-08-08
  • 利用BootStrap彈出二級對話框的簡單實現(xiàn)方法

    利用BootStrap彈出二級對話框的簡單實現(xiàn)方法

    彈出二級對話框,即在對話框的基礎(chǔ)上再彈出一個對話框.這篇文章主要介紹了利用BootStrap彈出二級對話框的簡單實現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下
    2016-09-09
  • js逆向解密之網(wǎng)絡(luò)爬蟲

    js逆向解密之網(wǎng)絡(luò)爬蟲

    在本篇內(nèi)容里小編給大家整理的是關(guān)于js逆向解密之網(wǎng)絡(luò)爬蟲的相關(guān)知識點內(nèi)容,需要的朋友們參考下。
    2019-05-05
  • javascript實現(xiàn)編寫網(wǎng)頁版計算器

    javascript實現(xiàn)編寫網(wǎng)頁版計算器

    這篇文章主要為大家詳細介紹了javascript實現(xiàn)編寫網(wǎng)頁版計算器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • 詳解JavaScript數(shù)據(jù)類型和判斷方法

    詳解JavaScript數(shù)據(jù)類型和判斷方法

    這篇文章主要介紹了JavaScript數(shù)據(jù)類型和判斷方法的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)JavaScript,感興趣的朋友可以了解下
    2020-09-09
  • 輕松掌握JavaScript單例模式

    輕松掌握JavaScript單例模式

    這篇文章主要為大家詳細介紹了JavaScript單例模式,幫助大家輕松掌握JS單例模式,感興趣的小伙伴們可以參考一下
    2016-08-08
  • JS實用的帶停頓的逐行文本循環(huán)滾動效果實例

    JS實用的帶停頓的逐行文本循環(huán)滾動效果實例

    下面小編就為大家?guī)硪黄狫S實用的帶停頓的逐行文本循環(huán)滾動效果實例。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-11-11

最新評論