2015-04-01 49 views
1

要求: 能夠通過給每個變量分配唯一的ID跟蹤的JavaScript字符串變量。如何在JavaScript跟蹤一個字符串變量

實施例:

var a = 'alkd'; 
var b = 'iquwq'; 
console.log(a.id); # 1234 
console.log(b.id); # 5678 

我曾嘗試:我曾嘗試通過添加新方法屬性'String.prototype'

輸出延伸字符串對象:

console.log(a.id); #1234 
console.log(b.id); #1234 (returning same id as above) 

我所觀察到的:一個字符串的例子是繼承String.prototype。對的更改String.Prototype對象傳播到全部字符串實例。

例子:

a.id = 8783; # setter 
console.log(b.id)# returns 8783 

我的問題:

  1. 它實際上是通過擴展String對象來獲得所需的功能?
  2. 有沒有其他方法可以做到這一點?
  3. 是否有計劃將此功能添加到未來版本的ECMAScript?
+2

字符串是不可變的所以在跟蹤它 – 2015-04-01 05:00:38

+0

首先,爲什麼沒有點?其次,這就是原型的全部重點。 – Nit 2015-04-01 05:00:44

+0

爲什麼你不使用json對象? a = {id:1234,value:val}; – vbranden 2015-04-01 05:17:29

回答

1

也許我不完全理解你想要做什麼,但是如果你想給一個變量分配一個id,並且還有一個getter和setter變量的值,那麼你可以使用JSON對象

// initialize 
var a = {id: 0, value: "zero"}; 

// get 
console.log(a.id); 
console.log(a.value); 

// set 
a.id = 1; 
a.value = "one"; 

// get 
console.log(a.id); 
console.log(a.value); 
相關問題