libphonenumber独立(没有大量谷歌依赖)?替代lib?

S42*_*S42 45 javascript phone-number libphonenumber

我正在考虑使用http://code.google.com/p/libphonenumber/来建立一个完善的项目.今天该项目不使用谷歌的JavaScript库,支持jQuery,jQueryUI,requirejs等.

libphonenumber看起来很棒...除了javascript版本(svn co http://libphonenumber.googlecode.com/svn/trunk/javascript/ libphonenumber-js)与goog.require调用相结合.如果运行演示(libphonenumber-js/i18n/phonenumbers/demo.html,如果你按建议检查),它会从closure-library.googlecode.com获取大量的谷歌库:

GET base.js
GET deps.js
GET error.js
GET string.js
GET asserts.js
GET array.js
GET useragent.js
GET browserfeature.js
GET tagname.js
GET classes.js
GET math.js
GET coordinate.js
GET size.js
GET object.js
GET dom.js
GET json.js
GET util.js
GET descriptor.js
GET fielddescriptor.js
GET message.js
GET serializer.js
GET objectserializer.js
GET stringbuffer.js
GET lazydeserializer.js
GET pbliteserializer.js
Run Code Online (Sandbox Code Playgroud)

我相信如果我使用闭包编译器编译它("如果你给use_closure_library参数赋值为true,编译器会在源代码中查找goog.require()语句,并提供任何此类语句所请求的Closure Library代码." ,https://developers.google.com/closure/compiler/docs/api-ref)我可以减少原始请求数量,但对于电话号码解析器而言,这似乎仍然是一个相当过量的内容,甚至是功能齐全的.

我的问题有两个可能的答案:

  1. 一种在JavaScript中使用libphonenumber而无需引入所有Google JavaScript库库的方法
  2. 另一个独立的(如没有几十个依赖项)一流的电话号码处理库,包含JavaScript和Java实现

任何和所有建议最受赞赏.

jac*_*cnr 8

我有一个自定义版本(目前是220KB),我用于我的国际电话输入插件,暴露了大量的辅助功能.阅读来源了解详情.


Gil*_* SH 5

你也可以使用我的lib. https://github.com/Gilshallem/phoneparser

它只有一种方法,但你可以做很多

parsePhone("12025550104");
result: { countryCode:1, areaCode:202, number:5550104, countryISOCode:"US" }
Run Code Online (Sandbox Code Playgroud)

  • 当您基于它的libphonenumber使用apache许可证时,为什么GPL该库? (2认同)