鍍金池/ 問答/HTML5  Linux  HTML/ 前端如何改為后端想要的格式?

前端如何改為后端想要的格式?

前端有這么一數(shù)據(jù):

this.regions:[1,2];
this.citys:['shanghai','chongqing'];

后端要求的格式:

area:[
    {
        regions:1,
        citys:'shanghai'
    },
    {
        regions:2,
        citys:'chongqing'
    }
]

這樣的話前端該怎么改?


還有另外一種情況:
citys、regions是多選的,長度可能不一致:

this.citys:['shanghai','chongqing','changsha','hunan'];

regions數(shù)據(jù)可能會很少:

this.regions:[1];

兩者的length不一樣,這種情況又該如何做?

回答
編輯回答
九年囚
兩者的length不一樣,這種情況又該如何做?

從樓主提出的問題看來,后端認(rèn)為regioncity是存在對應(yīng)關(guān)系的,不管是1對1還是1對多。而前端認(rèn)為regioncity是沒有關(guān)系的。

所以這應(yīng)該是一個溝通和理解需求的問題吧?

2017年7月17日 11:19
編輯回答
夢囈

最簡單的就是for循環(huán)。

var area = [];
var length = Math.max(length_1, length_2);

for (var i = 0; i < length; ++i) {
  area.push({
    regions: regions[i],
    cities: cities[i],
  });
}

取不到的就是undefined,你可以在我的基礎(chǔ)上改改。以及city的復(fù)數(shù)是cities

2017年7月7日 12:52