2013-03-13 66 views
1

如何更改数字,字符串或数组的当前值?更改当前字符串值

String.prototype.change_me = function() { this = '123'; } 
Number.prototype.change_me = function() { this = 123; } 
Array.prototype.change_me = function() { this = [1,2,3]; } 
x = '234'; 
x.change_me(); // error 
x = 234; 
x.change_me(); // error 
x = [2,3,4]; 
x.change_me(); // error 

的错误是:的ReferenceError:无效的左手侧分配

我想我已经这样做过,但我忘了怎么办呢..

+2

扩展原型通常不是一个好主意。阅读:http://blog.dreasgrech.com/2009/11/no-one-should-extend-objectprototype-in​​.html – 2013-03-13 04:38:29

+0

@JoeMills扩展原型是完全没问题的。 – msarchet 2013-03-13 04:41:05

+1

许多编程语言(包括JS)中的字符串是不可变的。数组可以通过'push','shift'等变量 – Passerby 2013-03-13 04:41:36

回答

0

我看到的东西像你想要使用apply()函数,但看到的对象不是针对这些其他类型的,不确定它是否可以在String,Number和Array上使用相同的概念。