1. A computing device comprising a JIT compiler adapted to, receive at least one identified portion of a JavaScript source code, the at least one identified portion of the JavaScript comprising original context specific reference values, replace each of the original context specific reference values with one or more placeholders, and generate a first JIT copy of the at least one identified portion of the JavaScript source code, wherein the first JIT copy of the at least one identified portion of the JavaScript source code comprises the one or more placeholders; an application adapted to, store the first JIT copy of the at least one identified portion of the JavaScript source code; create a description of the original context specific reference values, wherein the description has one or more requirements, store the description of the original context specific reference values, access runtime information related to the original context specific reference values, compare the runtime information to the stored description of the original context specific reference values, obtain new context-specific reference values by using the runtime information when the runtime information satisfies the one more requirements, replace the one or more placeholders in the first JIT copy of the at least one identified portion with the new context-specific reference values, and use the JIT compiler to generate a second JIT copy of the at least one identified portion of the JavaScript source code, wherein the second JIT copy of the at least one identified portion of the JavaScript source code comprises the new context-specific reference values; and a JavaScript Engine adapted to execute the second JIT copy of the at least one identified portion of the JavaScript source code.