Guest User

Untitled

a guest
May 22nd, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.52 KB | None | 0 0
  1. function getHumanAddress(geoObject){
  2. var declaration = {
  3. 'CountryName': 'country',
  4. 'AdministrativeAreaName': 'area',
  5. 'SubAdministrativeAreaName': 'subarea',
  6. 'LocalityName': 'city',
  7. 'DependentLocalityName': 'subcity',
  8. 'ThoroughfareName': 'street',
  9. 'PremiseNumber': 'house'
  10. }
  11. ,parseParams = ['Country', 'CountryName', 'AdministrativeArea', 'AdministrativeAreaName',
  12. 'Locality', 'LocalityName', 'Thoroughfare', 'ThoroughfareName', 'Premise', 'PremiseNumber',
  13. 'DependentLocality', 'DependentLocalityName',
  14. 'SubAdministrativeArea', 'SubAdministrativeAreaName']
  15. ,level = geoObject['metaDataProperty']['GeocoderMetaData']['AddressDetails']
  16. ,result={}
  17. ,nextLevel;
  18. while(1){
  19. var goDeeper = false;
  20. for(var key in level){
  21. if(parseParams.indexOf(key)!==-1){
  22. if(typeof level[key] === 'object'){
  23. nextLevel = level[key];
  24. goDeeper = true;
  25. }else{
  26. for(var declKey in declaration){
  27. if(declKey === key){
  28. result[declaration[key]] = level[key];
  29. }
  30. }
  31. }
  32.  
  33. }
  34. }
  35. if(goDeeper){
  36. level = nextLevel; //we need to go deeper ;)
  37. }else{
  38. break;
  39. }
  40. }
  41. return result;
  42. }
Add Comment
Please, Sign In to add comment