A. 前端——遍歷函數理解
1.for循環
注意事項:for更多用於知道數組的長度的情況下
```
var obj = [1, 2, 3,4 ];
for(var a=0; a<obj.length;a++) //for循環三個參數 : 1.起始條件 2.終止條件 3.循環條件 。 可省略
{
console.log(obj[a])
}
```
2.forEach循環
注意事項:遍歷整個數組中所有的元素,沒有返回值
var obj =[1,'盼希',true,'ponX'];
obj.forEach((item,index)=>{
item='forEach用法,'+item;
console.log(item);
})
3.map函數·
注意事項:遍歷數組中的每個元素,並且回調,需要返回值,返回的值組成一個新的數組,原來的數組沒有發生變化
var obj =[1,'盼希',true,'ponX'];
var obj2=obj.map(function( item,index) {
item="map遍歷"+item;
console.log(item)
return item;
})
console.log("obj2", obj);
4.filter函數
注意事項:過濾符合條件的元素,並且組成一個新的數組 原數組不變
var obj =['1',2,'盼希',4,'HelloWorld',false];
var obj2=arr.filter(function(item,index) {
return typeof item==='number';
})
console.log(obj,obj2);
5.some函數
注意事項:遍歷數組中是否有符合條件的元素,返回的是boolean值
var obj =['2',5,'盼希',true,'HelloWorld',1];
var obj2=obj.some(function(item,index) {
return typeof item==='number';
})
console.log(obj,obj2);
6.every函數
注意事項:遍歷數組中是否有符合條件的元素,並且返回的是boolean值
var obj =['2',4,'盼希',true,'HelloWorld'];
var obj2=obj.every(function(item,index) {
return typeof item==='number';
})
console.log(obj,obj2);
7遍歷對象的方法: for..in
let obj ={c:'2',d:4,e:true};
for (var h in obj) {
console.log(obj[h],h)
}
console.log(obj);
B. 在 .NET中 一般處理文件 如何向<script></script>中傳遞數組並遍歷出來 如下列
前端獲取到後台傳來的json數據,可以這么處理
var jsondata=data;// data指的是後台的數據
var json=$.parseJSON(jsondata);//將後台的json數據編程js中接受的數據
這時候json表示的就是後台傳來的數據了,如果是一個數組,用基本的for循環就行了,不推薦用foreach循環。
在後台.net中 用JavaScriptSerialize 這個類實現對json數據的封裝就行,將數據封裝到一個類的對象中即可。好就沒寫.net代碼了,可能不太對,你可以參考一下。
C. id name age 1 滔哥 70 2 寶哥 68 怎麼用ajax 獲取資料庫的多行記錄,存入json,並在前端遍歷
首先獲取資料庫裡面的數據後台json格式:
StringBuffer sb = new StringBuffer(); //隨便定義一個變數
sb.append("{");
sb.append("\"contents\":[");
for (int i = 0; i < 你獲取的list.size(); i++) {
GameApplyPJ ad = (GameApplyPJ) groupPlayerList.get(i);//封裝的欄位pojo
if (i > 0) {
sb.append(",");
}
sb.append("{");
sb.append("\"id\":\"" + ad.getId() + "\","); sb.append("\"name\":\"" + ad.getName() + "\","); sb.append("\"age\":\"" + ad.getAge() + "\"");
sb.append("}");
}
sb.append("]");
sb.append("}");
out.println(sb);
前台頁面的也要應用ajax的json格式
$.ajax({
type: "POST",
url: "你的action地址",
data: {參數名1 : 參數值1 , 參數名2 : 參數值2},
dataType : "json",
success: function(json){
var inhtml = "";
inhtml += "<div><table><tr><td>id編號</td><td>姓名</td><td>年齡</td></tr>";
for (i = 0; i < json.contents.length; i++) {
inhtml += "<tr><td>" + json.contents[i].id + "</td>";
inhtml += "<td>" + json.contents[i].name + "</td>"; inhtml += "<td>" + json.contents[i].age + "</td></tr>";
}
inhtml += "</table></div>";
$('你設置的元素的id這里是div的id').html(inhtml);
},
error : function(xhr, status, errorThrown) {
alert("errorThrown=" + errorThrown);
} }
});
D. 寫好樣式給後端遍歷和前端用ajax遍歷數據有啥區別
前兩種的話會麻煩些,json的話就簡單了。String 和Object 可能需要自己去寫遍歷方法,json 可以直接循環出來
E. 怎麼獲取JSP前端一個table的數據並將所有的數據打包傳給後台呢請各位大佬指點。
循環遍歷每一個td,組裝成json格式的數據,使用ajax等技術將這組數據發送到後台
F. 前端如何獲取遍歷的每個item的div高度
這不簡單?你既然知道獲取的是哪些元素的什麼屬性,直接遍歷即可。
假設要獲取的div的className是item,則有:
jQuery:
let arr = new Array();
$('.item').each(function(){
arr.push($(this).width());
});
純JavaScript:
let arr = new Array();
let divs = document.getElementsByClassName('item');
for(i=0;i<divs.length;i++){
arr.push(divs[i].style.height);
}
G. 前端遍歷後台傳來的json 串 我後台返回的是map
// json 對象遍歷的問題
const data = {
list1: [1,2,3],
list2: [4,5,6]
}
// ES6 的寫法
Object.keys(data).forEach(key => {
// 處理數據
console.log(data[key])
})
// ES5 的寫法
for (key in data) {
// 處理數據
console.log(data[key])
}
H. angularjs中後端傳給前端map集合怎麼遍歷出每個值
angularjs是一個很強大的JavaScript框架,強大到我看了半個小時寫出來一個基本的angularjs項目(本人是標準的後台開發人員).
angularjs獲取map的value值很簡單{{map.key}},那麼在未知key的時候怎麼獲取key了
<td ng-repeat="(x,y) in map">{{y}}</td>
<td ng-repeat="(x,y) in map">{{x}}</td>
當遇到value可能為null的時候
<td ng-repeat="(x,y) in map">{{y || " "}}</td>