我正在重构代码.我无法确定如何实现几个实用功能.具体来说,如果某些功能在我的个人命名空间中更好,或直接扩展js Objects.
扩展本机JavaScript对象的示例
(这是适当的术语吗?).
String.prototype.prettyDate = function(){ return (this.substr(5,2) + '/' + this.substr(8) + '/' + this.substr(0,4)); } var myString = "2010-12-27"; //logs 12/27/2010 console.log(myString.prettyDate);
使用我自己的命名空间的例子
var myNamespace = (function(){ var my = {}; my.prettyDate = function ( dateStr ){ return (dateStr.substr(5,2) + '/' + dateStr.substr(8) + '/' + dateStr.substr(0,4)); } return my; }()); var pretifiedDate = myNamespace.prettyDate('2010-12-27'); //logs 12/27/2010 console.log(pretifiedDate);
需要考虑的问题
什么时候可以有效地插入本机JavaScript对象?
>如何知道实用程序在我自己的命名空间中是否更好?