乐趣区

provincecityarea省市区数据工具包

https://github.com/cq0122/province-city-area

省市区数据工具包,含有省市区三级数据,支持排序和自定义返回的数据属性。

安装

$npm install province-city-area --save

数据对象

属性 类型 说明
id string id
pid string pid
name string 名称
full_name string 全称
short_name string 简称
pinyin string 拼音
pinyin_initial string 拼音首字母
area_code string 区号

数据统计

id province city city_remark area
11 北京 东城、西城、朝阳、丰台、石景山、海淀、门头沟、房山、通州、顺义、昌平、大兴、怀柔、平谷、密云、延庆 16 个市辖区
12 天津 和平、河东、河西、南开、河北、红桥、东丽、西青、津南、北辰、武清、宝坻、滨海、宁河、静海、蓟州 16 个市辖区
13 河北 石家庄、唐山、秦皇岛、邯郸、邢台、保定、张家口、承德、沧州、廊坊、衡水 11 个地级市 188
14 山西 太原、大同、阳泉、长治、晋城、朔州、晋中、运城、忻州、临汾、吕梁 11 个地级市 122
15 内蒙古 呼和浩特、包头、乌海、赤峰、通辽、鄂尔多斯、呼伦贝尔、巴彦淖尔、乌兰察布、兴安盟、锡林郭勒盟、阿拉善盟 9 个地级市、3 个盟 109
21 辽宁 沈阳、大连、鞍山、抚顺、本溪、丹东、锦州、营口、阜新、辽阳、盘锦、铁岭、朝阳、葫芦岛 14 个地级市 100
22 吉林 长春、吉林市、四平、辽源、通化、白山、松原、白城、延边 8 个地级市、1 个自治州 69
23 黑龙江 哈尔滨、齐齐哈尔、鸡西、鹤岗、双鸭山、大庆、伊春、佳木斯、七台河、牡丹江、黑河、绥化、大兴安岭 12 个地级市、1 个地区 134
31 上海 黄浦、徐汇、长宁、静安、普陀、虹口、杨浦、闵行、宝山、嘉定、浦东、金山、松江、青浦、奉贤、崇明 16 个市辖区
32 江苏 南京、无锡、徐州、常州、苏州、南通、连云港、淮安、盐城、扬州、镇江、泰州、宿迁 13 个地级市 107
33 浙江 杭州、宁波、温州、嘉兴、湖州、绍兴、金华、衢州、舟山、台州、丽水 11 个地级市 90
34 安徽 合肥、芜湖、蚌埠、淮南、马鞍山、淮北、铜陵、安庆、黄山、滁州、阜阳、宿州、六安、亳州、池州、宣城 16 个地级市 120
35 福建 福州、厦门、莆田、三明、泉州、漳州、南平、龙岩、宁德 9 个地级市 84
36 江西 南昌、景德镇、萍乡、九江、新余、鹰潭、赣州、吉安、宜春、抚州、上饶 11 个地级市 100
37 山东 济南、青岛、淄博、枣庄、东营、烟台、潍坊、济宁、泰安、威海、日照、临沂、德州、聊城、滨州、菏泽 16 个地级市 154
41 河南 郑州、开封、洛阳、平顶山、安阳、鹤壁、新乡、焦作、濮阳、许昌、漯河、三门峡、南阳、商丘、信阳、周口、驻马店、济源 17 个省辖市、1 个省直管市 181
42 湖北 武汉、黄石、十堰、宜昌、襄阳、鄂州、荆门、孝感、荆州、黄冈、咸宁、随州、恩施、仙桃、潜江、天门、神农架 12 个地级市、1 个自治州、3 个省直管县级市、1 个林区 101
43 湖南 长沙、株洲、湘潭、衡阳、邵阳、岳阳、常德、张家界、益阳、郴州、永州、怀化、娄底、湘西 13 个地级市、1 个自治州 139
44 广东 广州、韶关、深圳、珠海、汕头、佛山、江门、湛江、茂名、肇庆、惠州、梅州、汕尾、河源、阳江、清远、东莞、中山、潮州、揭阳、云浮 21 个地级市 181
45 广西 南宁、柳州、桂林、梧州、北海、防城港、钦州、贵港、玉林、百色、贺州、河池、来宾、崇左 14 个地级市 111
46 海南 海口、三亚、三沙、儋州、五指山、琼海、文昌、万宁、东方、定安、屯昌、澄迈、临高、白沙、昌江、乐东、陵水、保亭、琼中 4 个地级市、15 个省直辖县级行政单位 29
50 重庆 万州、涪陵、渝中、大渡口、江北、沙坪坝、九龙坡、南岸、北碚、綦江、大足、渝北、巴南、黔江、长寿、江津、合川、永川、南川、璧山、璧山、潼南、荣昌、开州、梁平、武隆、城口、丰都、垫江、忠县、云阳、奉节、巫山、巫溪、石柱、秀山、酉阳、彭水 26 个区、8 个县、4 个自治县
51 四川 成都、自贡、攀枝花、泸州、德阳、绵阳、广元、遂宁、内江、乐山、南充、眉山、宜宾、广安、达州、雅安、巴中、资阳、阿坝、甘孜、凉山 18 个地级市、3 个自治州 186
52 贵州 贵阳、六盘水、遵义、安顺、毕节、铜仁、黔西南、黔东南、黔南 6 个地级市、3 个自治州 88
53 云南 昆明、曲靖、玉溪、保山、昭通、丽江、普洱、临沧、楚雄、红河、文山、西双版纳、大理、德宏、怒江、迪庆 8 个地级市、8 个自治州 129
54 西藏 拉萨、日喀则、昌都、林芝、山南、那曲、阿里 6 个地级市、1 个地区 78
61 陕西 西安、铜川、宝鸡、咸阳、渭南、延安、汉中、榆林、安康、商洛 10 个地级市 107
62 甘肃 兰州、嘉峪关、金昌、白银、天水、武威、张掖、平凉、酒泉、庆阳、定西、陇南、临夏、甘南 12 个地级市、2 个自治州 93
63 青海 西宁、海东、海北、黄南、海南、果洛、玉树、海西 2 个地级市、6 个自治州 45
64 宁夏 银川、石嘴山、吴忠、固原、中卫 5 个地级市 22
65 新疆 乌鲁木齐、克拉玛依、吐鲁番、哈密、昌吉、博尔塔拉、巴音郭楞、阿克苏、克孜勒苏、喀什、和田、伊犁、塔城、阿勒泰、石河子、阿拉尔、图木舒克、五家渠、北屯、铁门关、双河、可克达拉、昆玉 4 个地级市、5 个地区、5 个自治州、9 个自治区直辖县级市 119
71 台湾 台北市、新北市、桃园市、台中市、台南市、高雄市、基隆市、新竹市、嘉义市、新竹县、苗栗县、彰化县、南投县、云林县、嘉义县、屏东县、宜兰县、花莲县、台东县、澎湖县、金门县、连江县 6 个直辖市、3 市、13 县
81 香港 中西区、湾仔区、东区、南区、油尖旺区、深水埗区、九龙城区、黄大仙区、观塘区、北区、大埔区、沙田区、西贡区、荃湾区、屯门区、元朗区、葵青区、离岛区 18 个区
82 澳门 花地玛堂区、圣安多尼堂区、大堂区、望德堂区、风顺堂区、嘉模堂区、圣方济各堂区 7 个堂区
  • province、area 的区号为 null,city 的区号不为空。
  • 台湾、香港、澳门的 city 数据中 name、full_name、short_name 相同。

数据为个人整理,难免有遗漏和疏忽,如有错误,欢迎指正,谢谢。

使用说明

getProvinces(field, sort)
  • filed 返回数组元素的属性,可选参数。默认返回数据对象的全部属性,支持传数组或对象,数组元素或对象属性必须为数据对象中的属性。例如:["id", "name", "pinyin"],则返回 [{id:"xx1",name:"xx1",pinyin:"xx1"},{id:"xx2",name:"xx2",pinyin:"xx2"}...]。同时也支持传对象参数更改返回值的对象属性,例如:{id:"value",name:"label"},则返回 [{value:"xx1",label:"xx1"},{value:"xx2",label:"xx2"}...]
  • sort 字段和排序规则对象,可选参数。默认按 id 升序。例如:{id:"desc",pinyin:"desc"},排序对象的属性必须为数据对象中的属性,属性定义的顺序影响排序的结果,值为 asc 或 desc。
getCitys(pid, field, sort)
  • pid 省 id,必填参数。
  • filed,参考 getProvinces。
  • sort,参考 getProvinces。
getAreas(pid, field, sort)
  • pid 地市 id,必填参数。
  • filed,参考 getProvinces。
  • sort,参考 getProvinces。

使用示例

import {getProvinces, getCitys, getAreas} from "province-city-area";

getProvinces({id: "key", name: "label"}, {pinyin: "asc"});
//=> [{"key":"34","label":"安徽"},{"key":"82","label":"澳门"},{"key":"11","label":"北京"},{"key":"50","label":"重庆"},{"key":"35","label":"福建"},{"key":"62","label":"甘肃"},{"key":"44","label":"广东"},{"key":"45","label":"广西"},{"key":"52","label":"贵州"},{"key":"46","label":"海南"},{"key":"13","label":"河北"},{"key":"41","label":"河南"},{"key":"23","label":"黑龙江"},{"key":"42","label":"湖北"},{"key":"43","label":"湖南"},{"key":"22","label":"吉林"},{"key":"32","label":"江苏"},{"key":"36","label":"江西"},{"key":"21","label":"辽宁"},{"key":"15","label":"内蒙古"},{"key":"64","label":"宁夏"},{"key":"63","label":"青海"},{"key":"37","label":"山东"},{"key":"14","label":"山西"},{"key":"61","label":"陕西"},{"key":"31","label":"上海"},{"key":"51","label":"四川"},{"key":"71","label":"台湾"},{"key":"12","label":"天津"},{"key":"54","label":"西藏"},{"key":"81","label":"香港"},{"key":"65","label":"新疆"},{"key":"53","label":"云南"},{"key":"33","label":"浙江"}]

getCitys(42, { id: "i", name: "n"});
//=> [{"i":"4201","n":"武汉"},{"i":"4202","n":"黄石"},{"i":"4203","n":"十堰"},{"i":"4205","n":"宜昌"},{"i":"4206","n":"襄阳"},{"i":"4207","n":"鄂州"},{"i":"4208","n":"荆门"},{"i":"4209","n":"孝感"},{"i":"4210","n":"荆州"},{"i":"4211","n":"黄冈"},{"i":"4212","n":"咸宁"},{"i":"4213","n":"随州"},{"i":"4228","n":"恩施"},{"i":"429004","n":"仙桃"},{"i":"429005","n":"潜江"},{"i":"429006","n":"天门"},{"i":"429021","n":"神农架"}]

getCitys(42, ["id", "name"]);
//=> [{"id":"4201","name":"武汉"},{"id":"4202","name":"黄石"},{"id":"4203","name":"十堰"},{"id":"4205","name":"宜昌"},{"id":"4206","name":"襄阳"},{"id":"4207","name":"鄂州"},{"id":"4208","name":"荆门"},{"id":"4209","name":"孝感"},{"id":"4210","name":"荆州"},{"id":"4211","name":"黄冈"},{"id":"4212","name":"咸宁"},{"id":"4213","name":"随州"},{"id":"4228","name":"恩施"},{"id":"429004","name":"仙桃"},{"id":"429005","name":"潜江"},{"id":"429006","name":"天门"},{"id":"429021","name":"神农架"}]

getAreas(4213);
//=> [{"fullName":"曾都区","id":"421303","name":"曾都","pinyin":"zeng_du","pinyinInitial":"Z"},{"fullName":"随县","id":"421321","name":"随县","pinyin":"sui_xian","pinyinInitial":"S"},{"fullName":"广水市","id":"421381","name":"广水","pinyin":"guang_shui","pinyinInitial":"G"}]

价值¥ 1?? 的排序方法

orderBy(collection, sort):数组对象排序方法,支持多个属性排序,支持中文排序。

  • collection 对象数组。
  • sort 字段和排序规则对象,排序对象的属性必须为数据对象中的属性,属性定义的顺序影响排序的结果,值为 asc 或 desc。
import {orderBy} from "province-city-area";
const students = [{"id":"11","name":"刘一","total":700,"en":150,"pe":"C"},
    {"id":"12","name":"陈二","total":700,"en":149,"pe":"B"},
    {"id":"13","name":"张三","total":700,"en":149,"pe":"A"},
    {"id":"14","name":"李四","total":700,"en":149,"pe":"A"},
    {"id":"15","name":"王五","total":720,"en":150,"pe":"A"},
    {"id":"16","name":"赵六","total":700,"en":150,"pe":"A"},
    {"id":"17","name":"孙七","total":700,"en":149,"pe":"A"},
    {"id":"18","name":"周八","total":700,"en":150,"pe":"B"},
    {"id":"19","name":"吴九","total":720,"en":149,"pe":"A"},
    {"id":"20","name":"郑十","total":720,"en":150,"pe":"B"}
];

orderBy(students, { total: "desc", en: "asc"});
//=>[{"id":"19","name":"吴九","total":720,"en":149,"pe":"A"},
//=> {"id":"15","name":"王五","total":720,"en":150,"pe":"A"},
//=> {"id":"20","name":"郑十","total":720,"en":150,"pe":"B"},
//=> {"id":"12","name":"陈二","total":700,"en":149,"pe":"B"},
//=> {"id":"13","name":"张三","total":700,"en":149,"pe":"A"},
//=> {"id":"14","name":"李四","total":700,"en":149,"pe":"A"},
//=> {"id":"17","name":"孙七","total":700,"en":149,"pe":"A"},
//=> {"id":"11","name":"刘一","total":700,"en":150,"pe":"C"},
//=> {"id":"16","name":"赵六","total":700,"en":150,"pe":"A"},
//=> {"id":"18","name":"周八","total":700,"en":150,"pe":"B"}]

orderBy(students, { pe: "asc", name: "asc"});
//=>[{"id":"14","name":"李四","total":700,"en":149,"pe":"A"},
//=> {"id":"17","name":"孙七","total":700,"en":149,"pe":"A"},
//=> {"id":"15","name":"王五","total":720,"en":150,"pe":"A"},
//=> {"id":"19","name":"吴九","total":720,"en":149,"pe":"A"},
//=> {"id":"13","name":"张三","total":700,"en":149,"pe":"A"},
//=> {"id":"16","name":"赵六","total":700,"en":150,"pe":"A"},
//=> {"id":"12","name":"陈二","total":700,"en":149,"pe":"B"},
//=> {"id":"20","name":"郑十","total":720,"en":150,"pe":"B"},
//=> {"id":"18","name":"周八","total":700,"en":150,"pe":"B"},
//=> {"id":"11","name":"刘一","total":700,"en":150,"pe":"C"}]

Hope you will like !

退出移动版