Ошибка синтаксиса JavaScript - PullRequest
0 голосов
/ 14 апреля 2011
out += (out ? rogueArray[14] : rogueArray[13]) + arrayItem + ((vanWilder[arrayItem] !== null) ? = + encodeURIComponent(vanWilder[arrayItem]) : rogueArray[13]);

Здесь предположительно есть синтаксическая ошибка вплоть до [arrayItem в Dreamweaver. Любая помощь?

Вот его изображение в DreamWeaver:

http://i.stack.imgur.com/ITqV3.jpg

Ответы [ 3 ]

4 голосов
/ 14 апреля 2011

Разбиение того, что вы написали ...

out += (
    out ?
        rogueArray[14] :
        rogueArray[13]
    ) +
    arrayItem +
    (
        (vanWilder[arrayItem] !== null) ?
        //Oh no! What's this assignment doing here?
        = + encodeURIComponent(vanWilder[arrayItem]) : rogueArray[13]);

Также было бы легче отладить ваш код, если бы вы сделали что-то вроде следующего:

if (out) {
    out += rogueArray[14]
} else {
    out += rogueArray[13]
}
out += arrayItem

if (vanWilder[arrayItem] !== null) {
    out += encodeURIComponent(vanWilder[arrayItem])
} else {
    out += rogueArray[13]
}
2 голосов
/ 14 апреля 2011

Я не уверен, что? = + означает, но на самом деле, это слишком много в одной строке, если вы просто пишете это. Разбейте его на отдельные строки, используйте временные переменные, а затем, если вам действительно нужно, после того, как это сработает, выполните один шаг за шагом, перегруппировав его в один компактный слой с вложенными третичными операторами.

1 голос
/ 14 апреля 2011

У вас есть оператор присваивания, плавающий в середине этого выражения. Удалите его, и оно должно быть синтаксически правильным.

...