Javascript en PHP'nin $ $ varName eşdeğerdir [yinelenen]

4 Cevap php

Possible Duplicate:
How to access javascript variable value by creating another variable via concatenation?

PHP Ben olabilir:

$theVariable = "bigToe";
$bigToe = "is broken";

öyle ki:

echo "my ".$theVariable." ".$$theVariable;

görüntülemek istiyorsunuz

my bigToe is broken

Nasıl JavaScript buna benzer bir şey yapıyor hakkında gitmek istiyorsunuz?

4 Cevap

There is a pretty good write-up on Dynamic Variables in JavaScript here:

http://www.hiteshagrawal.com/javascript/dynamic-variables-in-javascript

Ben yerine window dizi kullanmak istiyorum eval:

var bigToe = "big toe";
window[bigToe] = ' is broken';
alert("my " + bigToe + window[bigToe]);

Sadece

eval("variableName")

Bunu güvenilmeyen içerik geçiyoruz eğer bu komut enjeksiyon için kullanılabilir olarak size tam değer, evaling bildiğinizden emin olmak zorunda rağmen

Tek yönlü eval işlevini kullanmak için

var theVariable = "bigToe";
var bigToe = "is broken";
console.log('my '+theVariable+' '+eval(theVariable));

Başka bir yol, her global değişken için anahtar-değer çifti tutan window nesnesini kullanmaktır. Bu bir dizi olarak erişilebilen:

var theVariable = "bigToe";
var bigToe = "is broken";
console.log('my '+theVariable+' '+window[theVariable]);

Her iki yöntem Firebug konsoluna cevap yazdırın.