Я хочу напечатать строку следующим образом 'abc', 21, 'email' в javascript, как я могу это сделать. ниже мой код.Как я могу напечатать строку в javascript
var data = [];
data.push('abc');
data.push(21);
data.push('email');
Я хочу напечатать строку следующим образом 'abc', 21, 'email' в javascript, как я могу это сделать. ниже мой код.Как я могу напечатать строку в javascript
var data = [];
data.push('abc');
data.push(21);
data.push('email');
если данные массив определяется как
var data = [];
data.push('abc');
data.push(21);
data.push('email');
метод использования join() массива, чтобы присоединиться (конкатенации) значения, указав разделитель
попробовать
alert("'" + data.join("','") + "'");
или
console.log("'" + data.join("','") + "'");
или просто
var value = "'" + data.join("','") + "'" ;
document.body.innerHTML += value;
Написать функцию процитировать строку:
function quote(s) {
return typeof s === 'string' ? "'"+s+"'" : s;
}
Теперь сопоставить массив и вставить элементы вместе с запятой:
data . map(quote) . join(',')
Поскольку объединение с запятой - это способ по умолчанию преобразовать массив в строку, вы можете уйти без join
в некоторых ситуациях:
alert (data . map(quote));
поскольку alert
преобразует свой параметр в строку. То же самое с
element.textContent = data . map(quote);
Теперь data = ['abc', 21, 'email'];
Таким образом, мы можем использовать функцию forEach
var myString = '';
data.forEach(function(value, index){
myString += typeof value === 'string' ? "'" + value + "'" : value;
if(index < data.length - 1) myString += ', ';
});
console.log(myString)
Сокращенный вариант:
myString = data.map(function(value){
return typeof value === 'string' ? "'" + value + "'" : value;
}).join(', ');
console.log(myString);
JSFiddle: https://jsfiddle.net/LeoAref/ea5fa3de/
Вы должны использовать prv вместо использования внешней переменной myString. Кроме того, не будет ли добавлена дополнительная запятая в конце? –
Это интересно знать, почему я получил отрицательный ?! –
@torazaburo Я исправил его ... –
Не будет ли котировки вокруг '21'? –
@torazaburo да, это будет, мой плохой, я пропустил эту конкретную деталь. – gurvinder372