js本身的局限性 别让javascript做太多事
发布时间:2016-12-30 来源:查字典编辑
摘要:甚至有个人问我“页面上有5个文本框,每个文本框只能输入一个字符,怎么用js实现用户输入第一个文本框的后焦点自动跳到第二个。”。我说这个功能不...
甚至有个人问我“页面上有5个文本框,每个文本框只能输入一个字符,怎么用js实现用户输入第一个文本框的后焦点自动跳到第二个。”。
我说这个功能不是应该是Tab做的吗?用户输入后只要按一下Tab键就可以了,而且,这样用户还可以控制是否切换到下一个(因为用户也有输入错误的可能)。
但他执意坚持,说是老板要求的。我最后只好帮他把这个功能实现了。但就是感觉怪怪的。
以前刚刚会用js时,感觉js好神奇,可以把一些很复杂的功能变得简单而轻松。后来慢慢知道js有很多事情不能做,像操作客户端的文件等。
那时还经常报怨为什么别的语言可以实现的功能偏偏js不能实现,于是自己做了很多一些本不应该是js做的事情。
有一次,我为了读取一个资源文件,用js洋洋洒洒的写了几百行代码,结果只是读取了xml中的一行内容,后来返回去改时发现之前写的代码用vb.net或C#实现不超过5行就可以实现。
我觉得js不宜做太多额外的事件还有原因一个是js本身的局限性--js是在客户端运行的,所有代码都是发到客户机器执行的。如此一来,一些像加密用户数据的逻辑就更不应该在js里实现了。