Причина вы время вниз проголосовали в том, что вы неправильно поняли типы путь используются в JavaScript. Следующий код:
var x = "thing";
Создает строку, содержащую символы thing
и связывает переменную x
к нему. В строке нет кавычек. Кавычки - это сообщение парсеру, который хочет сохранить строку.
Обратите внимание, что когда вы регистрируете это значение в консоли, оно ставит кавычки вокруг значения, чтобы показать, что это строка, поэтому она отображается в кавычках. Эти кавычки не сохраняются.
Причина, по которой ваш код замены не работает, заключается в том, что в строке нет кавычек.
Если вы написали следующее:
var y = "\"thing\"";
или
var z = '"thing"';
тогда вы бы есть строка с кавычками в нем.
Что вы должны делать, это разбор строки, содержащей true
. Самый быстрый способ, вероятно, таков:
function parseBool(input) {
if (input == "true") { return true; }
else if (input == "false") { return false; }
else return null; // or false, or throw exception, or whatever
}
Если вы уверены, что это всегда строка «true» или «false», просто сопоставьте ее с помощью '==='. – Joseph
Если это все о 'true' или' false', вы можете просто использовать 'var str = (string ==" true ");' – Regent
двойные кавычки не являются частью вашей входной строки. –