JavaScript 显示对象

如何显示 JavaScript 对象?

显示 JavaScript 对象将输出 [object Object]

实例

复制代码
<!DOCTYPE html>
<html>

<body>
    
    <p id="demo"></p>

    <script>
        const person = {
            name: "Bill",
            age: 19,
            city: "Seattle"
        };

        document.getElementById("demo").innerHTML = person;
    </script>

</body>

</html>
//[object Object]

显示 JavaScript 对象的一些常见解决方案是:

  • 按名称显示对象属性
  • 循环显示对象属性
  • 使用 Object.values() 显示对象
  • 使用 JSON.stringify() 显示对象

显示对象属性

对象的属性可显示为字符串:

实例

复制代码
<!DOCTYPE html>
<html lang="en">

<body>
    <p id="demo"></p>
    <script>
        const person={
            nama:"DianDian",
            age:20,
            city:"ShenZhen"
        }
        document.getElementById("demo").innerHTML = person.nama+" ,"+person.age+" ,"+person.city;
    </script>

</body>

</html>
//DianDian ,20 ,ShenZhen

在循环中显示对象

可以在循环中收集对象的属性:

实例

复制代码
<!DOCTYPE html>
<html lang="en">

<body>
    <p id="demo"></p>
    <script>
        const person={
            nama:"DianDian",
            age:20,
            city:"ShenZhen"
        };
        let txt ="";
        for(let x in person){
            txt+=person[x]+" ";
        };
        document.getElementById("demo").innerHTML = txt;
    </script>

</body>

</html>
//DianDian 20 ShenZhen

必须在循环中使用 person[x]。person.x 将不起作用(因为 x 是一个变量)。

使用 Object.values()

通过使用 Object.values(),任何 JavaScript 对象都可以被转换为数组:

复制代码
<!DOCTYPE html>
<html lang="en">

  <body>
    <p id="demo"></p>
    <script>
      const person = {
        name: "Bill",
        age: 19,
        city: "Seattle"
      };

      const myArray = Object.values(person);
      document.getElementById("demo").innerHTML = myArray;
    </script>

  </body>

</html>
//Bill,19,Seattle

使用 JSON.stringify()

任何 JavaScript 对象都可以使用 JavaScript 函数 JSON.stringify() 进行字符串化(转换为字符串)

复制代码
<!DOCTYPE html>
<html>

<body>


    <p id="demo"></p>

    <script>
        const person = {
            name: "Bill",
            age: 19,
            city: "Seattle"
        };

        document.getElementById("demo").innerHTML = JSON.stringify(person);
    </script>

</body>

</html>
//{"name":"Bill","age":19,"city":"Seattle"}

日期字符串化

JSON.stringify 将日期转换为字符串:

实例

复制代码
</html>
<!DOCTYPE html>
<html>

<body>

    <p id="demo"></p>

    <script>
        var person = {
            name: "Bill",
            today: new Date()
        };

        document.getElementById("demo").innerHTML = JSON.stringify(person);
    </script>

</body>

</html>
//{"name":"Bill","today":"2024-08-26T03:09:50.156Z"}

函数字符串化

JSON.stringify 不会对函数进行字符串化:

实例

复制代码
<!DOCTYPE html>
<html>

<body>
  
    <p id="demo"></p>

    <script>
        const person = {
            name: "Bill",
            age: function () { return 19; }
        };

        document.getElementById("demo").innerHTML = JSON.stringify(person);
    </script>

</body>

</html>
//{"name":"Bill"}

如果在字符串化之前将函数转换为字符串,这可以是"固定的"。

实例

复制代码
<!DOCTYPE html>
<html>

<body>

    <p id="demo"></p>

    <script>
        const person = {
            name: "Bill",
            age: function () { return 19; }
        };
        person.age = person.age.toString();

        document.getElementById("demo").innerHTML = JSON.stringify(person);
    </script>

</body>

</html>
//{"name":"Bill","age":"function () {return 19;}"}

数组字符串化

也可以对 JavaScript 数组进行字符串化:

实例

复制代码
<!DOCTYPE html>
<html>

<body>


    <p id="demo"></p>

    <script>
        const arr = ["Bill", "Steve", "Elon", "David"];
        document.getElementById("demo").innerHTML = JSON.stringify(arr);
    </script>

</body>

</html>
//["Bill","Steve","Elon","David"]
相关推荐
白帽黑客沐瑶17 分钟前
【网络安全就业】信息安全专业的就业前景(非常详细)零基础入门到精通,收藏这篇就够了
网络·安全·web安全·计算机·程序员·编程·网络安全就业
一枚前端小能手30 分钟前
「周更第3期」实用JS库推荐:Lodash
前端·javascript
艾小码30 分钟前
Vue组件到底怎么定义?全局注册和局部注册,我踩过的坑你别再踩了!
前端·javascript·vue.js
鹏多多38 分钟前
前端复制功能的高效解决方案:copy-to-clipboard详解
前端·javascript
uhakadotcom42 分钟前
Rollup 从0到1:TypeScript打包完全指南
前端·javascript·面试
Mintopia1 小时前
实时语音转写 + AIGC:Web 端智能交互的技术链路
前端·javascript·aigc
2503_928411561 小时前
9.15 ES6-变量-常量-块级作用域-解构赋值-箭头函数
前端·javascript·es6
树码小子1 小时前
Java网络编程:(socket API编程:TCP协议的 socket API -- 回显程序的服务器端程序的编写)
java·网络·tcp/ip
Mintopia1 小时前
Next.js 单元测试究竟该选 JTest 还是 Vitest?
前端·javascript·next.js
遂心_1 小时前
深入浅出 querySelector:现代DOM选择器的终极指南
前端·javascript·react.js