2010-04-08 2 views
1

I thgth «плохой спуск» означает неправильное использование, ускользающее с косой чертой.Что означает «Bad Escapement» JSLint в данном случае?

Почему JSLint выводит сообщение в этой функции на 3d строке (для ...)?

function splitTags(commaSeparated) { 
    var tagArray = commaSeparated.split(','); 
    for (var i=(tagArray.length) - 1; i>=0; i = i - 1){ 
     tagArray[i] = f.trim(tagArray[i]); 
    }  
    return tagArray; 
    } 
    f.splitTags=splitTags; 

Edit: Я изменил "i--" к "я = я-1" и опубликовал измененную версию выше.

Lint жалуется на символ 30, который является первым знаком минус.

Редактировать2: После этого изменения он больше не жалуется. Новая версия, которая работает:

function splitTags(commaSeparated) { 
    var tagArray = commaSeparated.split(','); 
    var startWith = tagArray.length - 1; 
    for (var i=startWith; i>=0; i = i - 1){ 
     tagArray[i] = f.trim(tagArray[i]); 
    }  
    return tagArray; 
    } 
    f.splitTags=splitTags; 

Странно. Я фактически использую JSLint multi: http://ajaxian.com/archives/jslint-multi

Так что это не решено, но у меня есть обходное решение. Но было бы неплохо получить реальный ответ, у меня все еще есть много таких частей кода.

ответ

0

я думаю из обходного, что я отправил в Edit вопроса, что JSLint несколько не нравится length ключевое слово в для линии на всех.

Не используйте длина, но вычислите его в строке перед и используйте переменную.

Правило, чтобы сделать JSLint несколько не жалуются.

0

Из JSLint page:

JSLint ожидает, что + не будет сопровождаться + или ++, и что - не будет сопровождаться - или -. Неуместное пространство может превратить + + в ++, что трудно понять. Используйте Паренс, чтобы избежать путаницы ..

+0

Это нечто иное. Я выключил ++/- проверку. Но я исправлю и повторю linting ... – user89021

+0

Я изменил его и обновил вопрос. Спасибо, но это было не решение. Еще не решен. – user89021

Смежные вопросы