通过JavaScript函数分配动态变量

时间:2012-10-12 00:57:44

标签: javascript

我一直致力于一个宠物项目,我一直在创建一个只有函数的JS框架......并且不确定是否有任何方法可以简化以下...在这种情况下动态变量赋值。 ..

String.prototype.is = function(x) {window[this]=window[this]||x;}
"a".is(42);
alert(a); // window.alert shows 42

有没有更简单的方法来执行此功能?这仅仅是为了实现仅功能框架...所以使用“a = 42;”不允许...我希望这不仅可用于数字,还可用于字符串,数组,布尔值,日期等。

2 个答案:

答案 0 :(得分:2)

您的想法存在问题,更改原生类型的原型并不是一个好习惯。与第三方代码一起使用时,这可能导致意外(有时几乎无法调试)行为。

您的主要想法没有问题,但我建议您在完全控制下将您想要操作的对象包装起来,然后使用包装器提供的其他行为来装饰这些对象。这是jQuery方法,更安全。

答案 1 :(得分:0)