javascript - 怎么操作數組去分割冒號取出對應的值。
問題描述
['1001001:95', '1001002:100', '1001003:35', '1001004:37.5', '1001005:60', '1001006:100', '1001007:90', '1001008:140', '1001009:60', '1001010:90']
怎么去優雅的操作數組,取出冒號前后的數字并匹配在一起?不好意思,沒表述清楚;我需要獲取到冒號后面的數字,我整體了一下思路。
if(1001001) { var value == 95}
問題解答
回答1:var obj = {};arr.forEach(function(item) { item = item.split(’:’) obj[item[0]] = item[1];});回答2:
按照你的if語句來說,如果你單純的想根據冒號前邊的id數字得到冒號后邊的值,那你可以用字符串的indexOf方法加substr方法來實現。
var array = ['1001001:95', '1001002:100', '1001003:35', '1001004:37.5', '1001005:60', '1001006:100', '1001007:90', '1001008:140', '1001009:60', '1001010:90'];var number = '1001001';var value = '';for (var i = 0; i < array.length; i ++) { if(array[i].indexOf(number)!= -1){var index = array[i].indexOf(':');value = array[i].substr(index + 1, array[i].length); }}回答3:
數組遍歷,針對每一個元素做一次 : 分割,將分割后的元素放到一個新數組里。
回答4:我也不知道是不是應該這樣搞啊,到時候取的話直接用key取就可以了
var a = ['1001001:95', '1001002:100', '1001003:35', '1001004:37.5', '1001005:60', '1001006:100', '1001007:90', '1001008:140', '1001009:60', '1001010:90'];function getResult(a,key){ var b = []; var c = {}; for(var i = 0;i < a.length; i++){b = a[i].split(':');c[b[0]] = b[1]; } return c[key];}console.log(getResult(a,1001001));
頁面可以直接用
$scope.spo_high = getResult(arr,data[0]);回答5:
const array = ['1001001:95', '1001002:100', '1001003:35', '1001004:37.5', '1001005:60', '1001006:100', '1001007:90', '1001008:140', '1001009:60', '1001010:90'];let result = array.reduce((a,b)=>{ let [key,value] = b.split(’:’); a[key] = value; return a;},{});console.log(result[’1001001’]);// 95回答6:
data = data.split(’:’) if(data[0] == 1001001) {$scope.spo_low = data[1]; }else if(data[0] == 1001002){$scope.spo_high = data[1]; }else if(data[0] == 1001003) {$scope.temp_low = data[1]; }else if(data[0] == 1001004) {$scope.temp_high = data[1]; }else if(data[0] == 1001005) {$scope.plus_low = data[1]; }else if(data[0] == 1001006) {$scope.plus_high = data[1]; }else if(data[0] == 1001007) {$scope.sbp_low = data[1]; }else if(data[0] == 1001008) {$scope.sbp_high = data[1]; }else if(data[0] == 1001009) {$scope.dbp_low = data[1]; }else if(data[0] == 1001010) {$scope.dbp_high = data[1]; }
我這樣編寫各位大神看看這樣有什么不妥?
相關文章:
1. docker gitlab 如何git clone?2. docker鏡像push報錯3. 關于docker下的nginx壓力測試4. angular.js使用$resource服務把數據存入mongodb的問題。5. android - 項目時間長了,字符串文件strings有的字符串可能是多余的,有沒有辦法快速檢測那些是沒用的?6. android - 七牛單次上傳單張圖片,11次6次上傳失敗7. mysql - 用PHPEXCEL將excel文件導入數據庫數據5000+條,本地數據庫正常,線上只導入15條,沒有報錯,哪里的問題?8. javascript - 怎么看網站用了什么技術框架?9. docker不顯示端口映射呢?10. 在windows下安裝docker Toolbox 啟動Docker Quickstart Terminal 失敗!
