其他人很难回答什么是可取的和不可取的,但这是我更喜欢的:
如果它只是少数几个功能,那么我可能会自己实现它们。但是,就像您说的那样,您可能无法考虑所有边缘情况(至少不能立即考虑),并且您添加了更多需要维护的内容。流行的库(如Underscore.js这对您的情况很有用)由许多人(通常)制作和维护,他们的主要关注点是该库的功能和性能。因此,他们更有可能比您更快地找到并解决任何问题。随着项目的进展,您可能会发现图书馆可以为您做的事情越来越多。很有可能存在他们已经考虑并考虑到的跨浏览器问题,而您直到测试很长时间才会注意到,或者更糟糕的是,客户抱怨。
了解一个流行的库也可以为未来的项目节省时间。对您和/或任何雇主/客户来说,对一个好的图书馆更有信心还有好处。
话虽如此 - 这是一个权衡,因为大多数库包含的功能比您最终使用的要多,因此浪费的空间会导致消耗更多的带宽和使用不必要的内存。带宽问题主要通过适当的缓存来解决。
此外,那里有大量优秀的库,几乎可以用于任何事情 - 因此,如果您使用太多库并使用太多库,您很容易最终不得不包含许多 100 千字节甚至更多的 Javascript。
所以总结一下:我更愿意将实用功能的创建和维护外包给那些想要免费做这些事情的人,而不是将我的时间和精力花在更直接为最终用户创造价值的事情上。