Δυναμικές κλήσεις

Κώδικας, πληροφορίες, ερωτήσεις και απαντήσεις σχετικές με την JavaScript.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Δυναμικές κλήσεις

Δημοσίευση από cpulse » 11 Μάιος 2008 19:38

Στην PHP μπορείς να καλέσεις μεταβλητές και κλάσεις με ονόματα σε μεταβλητές. Με την JavaScript υπάρχει αντίστοιχος τρόπος; Πχ στην PHP μπορείς να γράψεις

Κώδικας: Επιλογή όλων

class Abc {
  var $var = 'abc';
}

$class = 'Abc';
$myclass = new $class;
echo $myclass->var; // bgazei abc'
Κάτι αντίστοιχο σε JavaScript μπορεί να γίνει με

Κώδικας: Επιλογή όλων

function Abc {
  this.var = 'abc';
}

var class = 'Abc';
var myclass = eval('new ' + class);
document.writeln(myclass.var); // bgazei abc'
Αλλά .. υπάρχει κανένας τρόπος χωρίς την eval() ; :roll:

Άβαταρ μέλους
skeftomilos
Script Master
Δημοσιεύσεις: 2888
Εγγραφή: 07 Ιαν 2005 07:22
Τοποθεσία: Αθήνα

Δυναμικές κλήσεις

Δημοσίευση από skeftomilos » 21 Μάιος 2008 16:08

Δε μπορώ να φανταστώ γιατί θες να το κάνεις, αλλά γίνεται έτσι:

Κώδικας: Επιλογή όλων

function Abc() {
  this.prop = 'abc'
}

var className = 'Abc'
var myInstance = new this[className]()
document.write(myInstance.prop)

Άβαταρ μέλους
cpulse
Script Master
Δημοσιεύσεις: 1527
Εγγραφή: 21 Μαρ 2006 19:30
Τοποθεσία: Αθήνα village
Επικοινωνία:

Δυναμικές κλήσεις

Δημοσίευση από cpulse » 21 Μάιος 2008 21:59

Ναι σωστά.. πως δεν το σκέφτηκα.

Φτιάχνω μια σειρά από addons για joomla τα οποία λειτουργούνε με animations. Ο χρήστης μπορεί να επιλέγει το animation που προτιμάει. Είχα φτιάξει κάποιες εκδόσεις παλιότερα αλλά τελευταία το ξαναφτιάχνω σε 100% modular μορφή. Υπάρχουν κλάσεις που ελέγχουν τα διαφορετικά ήδη των animations και εκεί ακριβώς το χρειαζόμουνα.

Σε ευχαριστώ και πάλι Σκεφτόμυλε :)

Απάντηση

Επιστροφή στο “JavaScript και Frameworks”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες