2011-10-30 12 views
7

Używam istniejącego kodu i nie ma tej linii, której nie rozumiem. Wiem tylko, że domyślne może być używane jako część instrukcji swtich, ale nie wiedział, czy jest jakiś inny użytek do tego. Kod działa. Jest to część TurkIt, która służy do uruchamiania programów za pośrednictwem Amazon's MTURK.Domyślne słowo w JavaScript

function getQuestion(numA, numB) { 
    default xml namespace = "http://mechanicalturk.amazonaws.com/AWSMechanicalTurkDataSchemas/2005-10-01/QuestionForm.xsd"; 
    var q = <QuestionForm> ... 

Zobacz default przed stwierdzeniem xml namespace.

+0

Działa jak? Co robi druga linia? Jak pokazano - nie powinno działać. Czy na pewno nie ma '_' między' default', 'xml' i' namespace'? – ZenMaster

+0

Druga linia to także 'SyntaxError', jeśli działa to w ogóle, ponieważ jest przekształcany w prawdziwy javascript, który nie jest uruchamiany tak jak jest. – Esailija

+0

@Eailailija - Nie ma składni tutaj w FF 7.0.1: http://jsfiddle.net/Ka833/ –

Odpowiedz

14

default xml namespace to dyrektywa ECMAScript for XML (E4X).

E4X jest rozszerzeniem do ECMAScript, które pozwala traktować XML jak typ pierwotny (to samo dzieje się z częścią var q = <QuestionForm> ...). Dyrektywa default xml namespace ustawia (Jak można się spodziewać) domyślną przestrzeń nazw XML dla tego samego zakresu, co dyrektywa.

SpiderMonkey Mozilli (silnik używany przez Firefoksa i inne przeglądarki Gecko) i Rhino są jedynymi silnikami JavaScript, które znam, obsługującymi E4X, ale oparte na ECMAScript ActionScript 3 also does. Zakładam, że TurkIt został zaprojektowany do działania na Rhino.

+0

Tak, używa Rhino. Wielkie dzięki. – user994165

Powiązane problemy