在JavaScript中用json对象创建一个table表格——实战练习

简介: 在JavaScript中用json对象创建一个table表格——实战练习

背景

为了练习和使用js中的创建节点、追加节点以及练习生成json对象和遍历集合。对现阶段学习到的js中的DOM文档对象模型进行阶段总结并进行实践练习。

使用json对象的形式创建table表格

我们先来想一想如何进行实现,实现的步骤有哪几步。
1.首先我们需要生成一个table,并将这个元素节点追加到body中。

2.声明json个格式的字符串,申明json对象

3.根据json对象的长度进行循环,每一次循环都生成一个tr,并将tr追加到table中去。

4.对json对象中的元素进行遍历,并生成td将元素赋值到td中,最后将td追加到tr中。

代码进行实现

<!DOCTYPE html>
<html> 
  <head>
    <title></title>
    <style type="text/css">
    </style>
    <script type="text/javascript">
      // json格式的字符串
      var str = '[{name:"David",sex:"男",age:19},{name:"Jones",sex:"女",age:29},{name:"Rebecca",sex:"女",age:39}]';
      onload = function() {
        // 生成一个table,然后追加到body中
        // 里面遍历json对象生成里面的tr
        // 每一个json对象中的每一个成员(for-in)得到td标签
        // 1、生成table
        var table = document.createElement("table");
        //设置边框
        table.border = "1";
        // 2、得到json格式的对象
        var jsons = new Function("return " + str)();
        // 3、循环这个数组
        for(var i = 0; i < jsons.length; i++) {
          // 4、生成每一个行
          // 创建tr标签
          var tr = document.createElement("tr");
          // 5、添加td,就需要遍历每一个对象中的成员
          for(var k in jsons[i]) {
            // 6、创建td
            var td = document.createElement("td");
            td.appendChild(document.createTextNode(jsons[i][k]));
            // 7、追加td
            tr.appendChild(td);
          }
          // 循环结束,就得到一个行
          // 将行追加到table
          table.appendChild(tr);
        }
        // 将table加到body中
        document.getElementsByTagName("body")[0].appendChild(table);
      };
    </script>
  </head>
  <body>
  </body>
</html>

实现效果图

涉及到的知识点

DOM树中的添加节点,追加节点

创建节点
1.元素节点:var node=document.createElement(“标签名”);


2.文本节点:var textNode=document.createTextNode(“文本”);

<节点>.innerHTML=“文本”;//这里可以使用HTML

<节点>.innerText=“文本”;//非标准,浏览器兼容问题(不建议使用)


3.属性节点

<节点>.setAttribute(…,…);

//标准方法,符合xml规范,可以添加任意的属性


追加节点

1.追加到尾部:

父节点.appendChild(子节点);


2.插入到中间(插入到某一个元素的前面)

父节点.insertBefore(新元素,就元素);

声明json格式,创建json对象

声明json格式的字符串

// json格式的字符串
      var str = '[{name:"David",sex:"男",age:19},{name:"Jones",sex:"女",age:29},{name:"Rebecca",sex:"女",age:39}]';

创建Jason格式的对象

var jsons = new Function("return " + str)();
目录
相关文章
|
人工智能 自然语言处理 JavaScript
通义灵码2.5实战评测:Vue.js贪吃蛇游戏一键生成
通义灵码基于自然语言需求,快速生成完整Vue组件。例如,用Vue 2和JavaScript实现贪吃蛇游戏:包含键盘控制、得分系统、游戏结束判定与Canvas动态渲染。AI生成的代码符合规范,支持响应式数据与事件监听,还能进阶优化(如增加启停按钮、速度随分数提升)。传统需1小时的工作量,使用通义灵码仅10分钟完成,大幅提升开发效率。操作简单:安装插件、输入需求、运行项目即可实现功能。
702 4
 通义灵码2.5实战评测:Vue.js贪吃蛇游戏一键生成
|
11月前
|
JavaScript 前端开发 安全
【逆向】Python 调用 JS 代码实战:使用 pyexecjs 与 Node.js 无缝衔接
本文介绍了如何使用 Python 的轻量级库 `pyexecjs` 调用 JavaScript 代码,并结合 Node.js 实现完整的执行流程。内容涵盖环境搭建、基本使用、常见问题解决方案及爬虫逆向分析中的实战技巧,帮助开发者在 Python 中高效处理 JS 逻辑。
|
JSON IDE Java
鸿蒙开发:json转对象插件回来了
首先,我重新编译了插件,进行了上传,大家可以下载最新的安装包进行体验了,还是和以前一样,提供了在线版和IDE插件版,两个选择,最新的版本,除了升级了版本,兼容了最新的DevEco Studio ,还做了一层优化,就是针对嵌套对象和属性的生成,使用方式呢,一年前的文章中有过详细的概述,这里呢也简单介绍一下。
432 4
鸿蒙开发:json转对象插件回来了
|
JavaScript 前端开发 算法
流量分发代码实战|学会用JS控制用户访问路径
流量分发工具(Traffic Distributor),又称跳转器或负载均衡器,可通过JavaScript按预设规则将用户随机引导至不同网站,适用于SEO优化、广告投放、A/B测试等场景。本文分享一段不到百行的JS代码,实现智能、隐蔽的流量控制,并附完整示例与算法解析。
452 1
|
数据采集 JSON 数据可视化
JSON数据解析实战:从嵌套结构到结构化表格
在信息爆炸的时代,从杂乱数据中提取精准知识图谱是数据侦探的挑战。本文以Google Scholar为例,解析嵌套JSON数据,提取文献信息并转换为结构化表格,通过Graphviz制作技术关系图谱,揭示文献间的隐秘联系。代码涵盖代理IP、请求头设置、JSON解析及可视化,提供完整实战案例。
934 4
JSON数据解析实战:从嵌套结构到结构化表格
|
JSON API 数据处理
掌握 JSON 到表格转换:全面指南
本文探讨了将JSON转换为表格格式(如CSV、Excel)的方法,助力高效数据处理与可视化。内容涵盖Python(Pandas库)、在线工具、Excel/Google Sheets、命令行工具(jq/csvkit)及数据库等多种方式,并分析了转换中的挑战与最佳实践。此外,还介绍了Apipost在API开发测试中的应用,帮助优化数据处理流程,提升开发效率。适合不同技术水平的用户学习参考。
1559 13
|
数据采集 前端开发 JavaScript
金融数据分析:解析JavaScript渲染的隐藏表格
本文详解了如何使用Python与Selenium结合代理IP技术,从金融网站(如东方财富网)抓取由JavaScript渲染的隐藏表格数据。内容涵盖环境搭建、代理配置、模拟用户行为、数据解析与分析等关键步骤。通过设置Cookie和User-Agent,突破反爬机制;借助Selenium等待页面渲染,精准定位动态数据。同时,提供了常见错误解决方案及延伸练习,帮助读者掌握金融数据采集的核心技能,为投资决策提供支持。注意规避动态加载、代理验证及元素定位等潜在陷阱,确保数据抓取高效稳定。
671 17
|
监控 JavaScript 前端开发
MutationObserver详解+案例——深入理解 JavaScript 中的 MutationObserver:原理与实战案例
MutationObserver 是一个非常强大的 API,提供了一种高效、灵活的方式来监听和响应 DOM 变化。它解决了传统 DOM 事件监听器的诸多局限性,通过异步、批量的方式处理 DOM 变化,大大提高了性能和效率。在实际开发中,合理使用 MutationObserver 可以帮助我们更好地控制 DOM 操作,提高代码的健壮性和可维护性。 只有锻炼思维才能可持续地解决问题,只有思维才是真正值得学习和分享的核心要素。如果这篇博客能给您带来一点帮助,麻烦您点个赞支持一下,还可以收藏起来以备不时之需,有疑问和错误欢迎在评论区指出~
MutationObserver详解+案例——深入理解 JavaScript 中的 MutationObserver:原理与实战案例
Next.js 实战 (二):搭建 Layouts 基础排版布局
本文介绍了作者在Next.js v15.x版本发布后,对一个旧项目的重构过程。文章详细说明了项目开发规范配置、UI组件库选择(最终选择了Ant-Design)、以及使用Ant Design的Layout组件实现中后台布局的方法。文末展示了布局的初步效果,并提供了GitHub仓库链接供读者参考学习。
623 1
Next.js 实战 (二):搭建 Layouts 基础排版布局
|
监控 安全 中间件
Next.js 实战 (十):中间件的魅力,打造更快更安全的应用
这篇文章介绍了什么是Next.js中的中间件以及其应用场景。中间件可以用于处理每个传入请求,比如实现日志记录、身份验证、重定向、CORS配置等功能。文章还提供了一个身份验证中间件的示例代码,以及如何使用限流中间件来限制同一IP地址的请求次数。中间件相当于一个构建模块,能够简化HTTP请求的预处理和后处理,提高代码的可维护性,有助于创建快速、安全和用户友好的Web体验。
493 0
Next.js 实战 (十):中间件的魅力,打造更快更安全的应用

热门文章

最新文章