Вы можете использовать что-то вроде этого:
function myTestFunction() {
var data = {
name: "Olly",
age: 19,
};
for (var key in data) {
this[key] = data[key];
}
alert(name +" is "+ age +"!");
}
myTestFunction();
(Попробуйте это здесь: http://jsfiddle.net/dHDxd/3/)
Или даже экспортируйте их в глобальное пространство имен, используя window[key] = data[key]
. В любом случаеБудьте очень, очень осторожны с этим, так как риск забить глобальное пространство имен / переопределить другие вещи / и т. д. очень высок.
Обновление: универсальное extract()
function extract(data, where) {
for (var key in data) {
where[key] = data[key];
}
}
function runTest() {
var myData = { name: "Olly", age: 19, };
extract(myData, this);
alert(name +" is "+ age +"!");
}
runTest();