拜托前端同学们不要再用正则验证手机号了

2019-07-11 16:33:14 +08:00
 leafiy

说一个自己的经历,2017 年末 166 放号的第 6 个月,刚坐完 11 小时航班的我一路没睡,临晨 4 点孤独的拿着 166 手机号站在首都机场登录不上任何一个打车 APP。而出租车排队了 10000 个人。

今天从美帝回来的同事又遇到了同样问题,198 也放号快 1 年了吧,各个大厂的微信端、小程序都没更新正则,老外不会下 app,还好我远程帮忙叫了首汽约车和外卖。

18368 次点击
所在节点    分享发现
146 条回复
lagoon
2019-07-11 17:46:51 +08:00
@leafiy 怪不得了。原来是产品。。。。
我就说嘛。。。
实际体验,产品回答:以后出现,以后再说。
lagoon
2019-07-11 17:47:47 +08:00
@bojackhorseman 这是前辈的经验,都是泪。
许多公司,上线时间是定死的。
和产品讨论的越多,产品设计越完善,开发时间越少。
不是不讨论,前提是要有讨论的环境
luoway
2019-07-11 17:53:19 +08:00
如果是前端校验,正则不会出号段问题。
只可能是前端比较数字大小,或者后端校验。
iNaru
2019-07-11 17:53:39 +08:00
@leafiy 这显然是前后端验证一致性问题。希望不要到时又要骂前端:什么破前端,明明显示验证无错误,为什么提交又失败。
leafiy
2019-07-11 18:00:11 +08:00
@lagoon 谁在放大一个小小的合理疑问?万事都不是绝对,任何一个产品都做不到产品设计顾及到以后可能发生的意外情况,开发在写代码过程中遇到了产品没处理好的情况,非常常见,如果遇到意外,去提出疑问,到你嘴里变成了「一切都是前端 xx 」「和 xxxx 据理力争」「地位高低 xxxx 」?
leafiy
2019-07-11 18:03:37 +08:00
@iNaru 我不相信有合格的产品 er 会提「这里用正则表达式限制用户输入手机号」的需求,而是「如果这里用户输入的不是手机号」,这个情况下开发是应该发挥一点能动性坐成新号段友好的,还是随便找个手机号正则去做呢?

前面补充了,这是一个有则改之无则加勉的问题
liyuhang
2019-07-11 18:06:47 +08:00
这就是做事情只考虑现在不考虑未来的情况
warcraft1236
2019-07-11 18:11:38 +08:00
我记得 Google 有一个库就是校验手机号的,用这种公共的不好吗?
iNaru
2019-07-11 18:14:39 +08:00
@leafiy 要是后端同样限制,前端单方面加勉个鬼?
leafiy
2019-07-11 18:17:36 +08:00
@iNaru 了解了,因为后端也「有可能」有限制,所以前端不需要注意此问题了
lululau
2019-07-11 18:19:43 +08:00
所以到底为什么要验证手机号格式呢
iNaru
2019-07-11 18:20:39 +08:00
@leafiy 是的,所以我一开始就委婉地说明了,先确定是否是"只是"前端的问题,才开骂好吗?
yamedie
2019-07-11 18:21:05 +08:00
10,11,12 开头的除外。(见过哪个手机号 110 开头的务必告诉我一下
leafiy
2019-07-11 18:23:56 +08:00
@warcraft1236 之前过面试一个前端大牛,原话我觉得非常有道理

「 XX 库哪有 13d{8}来的爽,IDE 开发者只能叫码农当螺丝钉」
CFO
2019-07-11 18:23:59 +08:00
还不是傻逼测试提的问题
leafiy
2019-07-11 18:25:04 +08:00
@lululau 1L 已给出正解,剩下的交给短信服务商
lululau
2019-07-11 18:27:55 +08:00
@leafiy 手机号一定会是 11 位,并且第一位永远都是 1 ?宪法规定的?
skiy
2019-07-11 18:29:08 +08:00
号段已经发完啦。所以这个只能算伪命题了。12/11 不可能还当手机号吧
SEARCHINGFREE
2019-07-11 18:29:49 +08:00
就是就是,你们前端怎么没有预知未来的能力呢,像我们产品文档啥都不明确怎么可能出这种错呢。🐶
leafiy
2019-07-11 18:32:25 +08:00
@skiy 5 开头和 12 位已进入研讨阶段了,还有在大陆的老外们

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/582076

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX