Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function fromJsonToHtmlTable(input) {
- let parsed = JSON.parse(input);
- let output = [];
- let firstLine = [];
- output.push('<table>');
- let keys = Object.keys(parsed[0]);
- if (keys.length > 0) {
- for (let key of keys) {
- firstLine.push(`<th>${escapeHtml(key)}</th>`);
- }
- output.push(` <tr>${firstLine.join('')}</tr>`);
- }
- for (let obj of parsed) {
- let secondLine = [];
- for (let key of keys) {
- let currentKey = obj[key];
- secondLine.push(`<td>${escapeHtml(currentKey)}</td>`);
- }
- output.push(` <tr>${secondLine.join('')}</tr>`);
- }
- output.push('</table>');
- return output.join('\n');
- function escapeHtml(input) {
- let inputStr = input.toString();
- let pattern = /[&<>" ]/g;
- let escapes = {
- '&': '&',
- '<': '<',
- '>': '>',
- '"': '"',
- ' ': ' ',
- };
- return inputStr.replace(pattern, a => escapes[a]);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement