Ответ 1
Затем используйте +
для объединения перемешивания:
console.log("story " + name + " story");
Я делаю простую игру на JavaScript, но в истории мне нужно это, чтобы сказать имя игрока. так что я до сих пор:
var name = prompt("what is your name?");
console.log("story" name "story);
как сделать вторую строку? или есть другой способ, которым я мог бы это сделать. Возможно ли иметь 2 console.log();
на 1 строке в консоли?
Затем используйте +
для объединения перемешивания:
console.log("story " + name + " story");
console.log
принимает несколько аргументов, поэтому просто используйте:
console.log("story", name, "story");
Если имя - это object
или array
, то использование нескольких аргументов лучше, чем конкатенация. Если вы объединяете object
или array
в строку, вы просто регистрируете тип, а не содержимое переменной.
Но если name является просто примитивным типом, то несколько аргументов работают так же, как конкатенация.
Вы можете использовать другой метод консоли:
var name = prompt("what is your name?");
console.log(`story ${name} story`);
При использовании ES6 вы также можете сделать это:
var name = prompt("what is your name?");
console.log(`story ${name} story`);
Примечание. Для этого вам нужно использовать обратные элементы `` вместо "" или ''.
Вы можете передать несколько аргументов в журнал:
console.log("story", name, "story");
Существует несколько способов утечки переменной внутри строки.
Способ 1:
console.log("story", name, "story");
Преимущество: если имя является объектом JSON, оно не будет напечатано как "story" [object Object] "story"
Способ 2:
console.log("story " + name + " story");
Способ 3: При использовании ES6, как указано выше
console.log(`story ${name} story`);
Пособие: нет необходимости в дополнительном, или +
Способ 4:
console.log('story %s story',name);
Преимущество: строка становится более читаемой.
Это зависит от того, что вы хотите.
console.log("story "+name+" story")
будет объединить строки и распечатать их. Для меня я использую это, потому что легче видеть, что происходит.
Использование console.log("story",name,"story")
похоже на конкатенацию, однако, похоже, что-то вроде этого:
var text = ["story", name, "story"];
console.log(text.join(" "));
Это толкает все элементы в массиве вместе, разделяя пробел: .join(" ")
Оба console.log("story" + name + "story")
и console.log("story", name, "story")
отлично работают, как упоминалось в более ранних ответах.
Я по-прежнему предлагаю иметь привычку console.log("story", name, "story")
, потому что, если вы пытаетесь распечатать содержимое объекта, например json-объект, имея "story" + objectVariable + "story"
, он преобразует его в строку.
Это будет выводиться как: "story" [object Object] "story"
.
Просто хорошая практика.