JavaScript 的数据类型

news2024/11/27 9:55:21

JavaScript 的数据类型

  • 基本数据类型(值类型)

    • Number(包含小数、整数、负数、科学计数法)

      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8" />
          <meta http-equiv="X-UA-Compatible" content="IE=edge" />
          <meta name="viewport" content="width=device-width, initial-scale=1.0" />
          <title>Document</title>
        </head>
        <body></body>
        <script>
          // Number
          var a = 10;
          var b = 77.8;
          var c = 123e5; // 科学计数法
          console.log(a, b, c);
          // 检测数据类型 typeof
          console.log(typeof a);
          console.log(typeof b);
          console.log(typeof c);
        </script>
      </html>
      

      在这里插入图片描述

    • String(字符串,特点必须被引号包含)

      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8" />
          <meta http-equiv="X-UA-Compatible" content="IE=edge" />
          <meta name="viewport" content="width=device-width, initial-scale=1.0" />
          <title>Document</title>
        </head>
        <body></body>
        <script>
          // String
          var e = "hello world";
          console.log(e);
          // 判断类型
          console.log(typeof e);
        </script>
      </html>
      

      在这里插入图片描述

    • Boolean(布尔类型。true、false)

      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8" />
          <meta http-equiv="X-UA-Compatible" content="IE=edge" />
          <meta name="viewport" content="width=device-width, initial-scale=1.0" />
          <title>Document</title>
        </head>
        <body></body>
        <script>
          // Boolean
          // true 表示真
          // false 表示假
          var a = false;
          var b = true;
          console.log(a, b);
          // 判断类型
          console.log(typeof a);
          console.log(typeof b);
        </script>
      </html>
      

      在这里插入图片描述

    • Null(空)

      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8" />
          <meta http-equiv="X-UA-Compatible" content="IE=edge" />
          <meta name="viewport" content="width=device-width, initial-scale=1.0" />
          <title>Document</title>
        </head>
        <body></body>
        <script>
          // Null
          var a = null;
          console.log(a);
          // 判断类型
          console.log(typeof a);
        </script>
      </html>
      

      在这里插入图片描述

    • Undefined(未定义的)

      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8" />
          <meta http-equiv="X-UA-Compatible" content="IE=edge" />
          <meta name="viewport" content="width=device-width, initial-scale=1.0" />
          <title>Document</title>
        </head>
        <body></body>
        <script>
          // Undefined
          var a = undefined;
          console.log(a);
          // 判断类型
          console.log(typeof a);
        </script>
      </html>
      

      在这里插入图片描述

    • Symbol(s6新增的)

  • 引用数据类型

    • Object(对象)
    • Array(数组)
    • Function(函数)

JavaScript 数据类型的特点

  • JS 拥有动态类型。这意味着相同的变量可用做不同的类型

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body></body>
      <script>
        var a = 10;
        a = true;
        console.log(a);
        console.log(typeof a);
      </script>
    </html>
    

    在这里插入图片描述

对象

  • 对象是包含属性和方法的集合

  • 创建对象的第一种方式:字面量(直接赋值)

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body></body>
      <script>
        // 对象 Object
        // 创建对象的第一种方式 字面量
        var person = {
          name: "John",
          age: 36,
          height: 180,
          weight: 65,
          six: "男",
          // 方法
          drink: function () {
            console.log("喝水");
          },
        };
        console.log(person);
    
        // 使用对象中的方法:通过 对象.方法
        // 使用对象中的属性:通过 对象.属性
        // 使用属性
        console.log(person.name, person.age, person.height);
        // 使用方法
        person.drink();
    
        person.name = "李四";
        console.log(person );
      </script>
    </html>
    

    在这里插入图片描述

  • 对象的创建方式二:通过关键字 new.Object()创建,创建完成之后在进行赋值

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body></body>
      <script>
        // 创建对象的第二种方式:new.Object()
    
        // 创建对象
        var student = new Object();
        student.name = "李四";
        student.age = 25;
        student.weight = 65;
        student.sex = "男";
        student.drink = function () {
          console.log("看书");
        };
        console.log(student);
    
        // 使用
        console.log(student.name);
    
        student.name = "王五";
        console.log(student.name);
    
        student.drink();
      </script>
    </html>
    

    在这里插入图片描述

函数 Function

  • 创建方式一:字面量

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body></body>
      <script>
        // 函数的创建方式一:字面量
        // 将匿名函数赋值给变量
        var foo = function () {
          console.log("这是一个函数");
        };
        foo();
      </script>
    </html>
    

    在这里插入图片描述

  • 创建方式二:new Function()

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body></body>
      <script>
        // 函数的创建方式二:Function name (){}
        function foo() {
          // 具体代码
          console.log("foo");
        }
        foo();
      </script>
    </html>
    

    在这里插入图片描述

函数的参数

  • 如何传参

  • 形参:在定义函数时,用来接收参数的变量

  • 实参:在调用函数时,传入的具体数据

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body></body>
      <script>
        // 定义方法,接收参数的叫做形参
        function sum(a, b) {
          console.log(a + b);
        }
        // 方法的调用,传入的方式叫做实参
        sum(10, 20);
        sum(20, 40);
      </script>
    </html>
    

    在这里插入图片描述

函数的返回值

  • 通过return关键字,将结果进行返回,返回的结果可以进行保存,也可以直接打印

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body></body>
      <script>
        function sum(a, b) {
          // 计算 a+b 将 a+b 的结果复制给 total
          var total = a + b;
          return total;
        }
        // console.log(sum(10, 20));
        var n = sum(10, 20);
        console.log(n);
      </script>
    </html>
    

    在这里插入图片描述

函数的作用域

  • 在函数内部定义的变量叫做局部变量

  • 在函数外部定义的变量叫做全局变量

  • 在函数内部定义的变量在函数外是无法访问到的

    • 会产生错误(a is not defined,a 没有被定义)
  • 在函数外部定义的变量,在函数内部是可以访问到的

    <!DOCTYPE html>
    <html lang="en">
      <head>
        <meta charset="UTF-8" />
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <title>Document</title>
      </head>
      <body></body>
      <script>
        /* 
        在函数内部定义的变量叫做局部变量
        在函数外部定义的变量叫做全局变量
        在函数内部定义的变量在函数外是无法访问到的
        在函数外部定义的变量,在函数内部是可以访问到的
        */
    
        function foo() {
          // 函数体(方法体)写具体操作的
          var a = 10;
        }
        // console.log(a); // a 没有被定义
        
        var b = 20;
        function bar() {
          console.log(b);
        }
        bar();
      </script>
    </html>
    

    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/180670.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Linux】六、Linux 基础IO(四)|动态库和静态库

目录 十一、动态库和静态库 11.1 动态库和静态库定义 11.2 动静态库的基本原理 11.3 静态库的打包与使用 11.3.1 静态库的打包 11.3.2 静态库的使用 11.4 动态库的打包与使用 11.4.1 动态库的打包 11.4.2 动态库的使用 11.5 动态库的加载 十一、动态库和静态库 11.1…

CB2-2CARD的openSUSE安装NAS环境配置

CB2-2CARD的openSUSE安装&NAS环境配置1. 简介2. 规格3. 系统安装3.1 Linux/Unix稳定镜像3.2 基础功能更新&安装3.2.1 更新源3.2.2 升级系统3.2.3 基础功能安装3.3 OpenSUSE系统情况3.3.1 源操作命令3.3.2 源镜像4. 需求 & 配置4.1 MiniDLNAStep 1&#xff1a;安装M…

Day870.全局锁和表锁 -MySQL实战

全局锁和表锁 Hi&#xff0c;我是阿昌&#xff0c;今天学习记录的是关于全局锁和表锁的内容。 数据库锁设计的初衷是处理并发问题。 作为多用户共享的资源&#xff0c;当出现并发访问的时候&#xff0c;数据库需要合理地控制资源的访问规则。锁就是用来实现这些访问规则的重…

数据结构 | C++ | 并查集原理讲解与模拟实现 | 并查集的相关习题

文章目录前言并查集原理并查集的模拟实现leetcode练习省份数量等式方程的可满足性前言 并查集通常会作为高阶数据结构的一个子结构使用&#xff0c;虽然原理不是很难&#xff0c;但其思想值得我们好好学习 并查集原理 并查集是一种树形结构&#xff0c;其保存了多个集合&…

【Maven】多环境配置与应用

目录 1. 多环境配置作用 问题导入 2. 多环境配置步骤 2.1 定义多环境 2.2 使用多环境&#xff08;构建过程&#xff09; 3. 跳过测试&#xff08;了解&#xff09; 问题导入 3.1 应用场景 3.2 跳过测试命令 3.3 细粒度控制跳过测试 1. 多环境配置作用 问题导入 多…

LeetCode 2331. 计算布尔二叉树的值

给你一棵 完整二叉树 的根&#xff0c;这棵树有以下特征&#xff1a; 叶子节点 要么值为 0 要么值为 1 &#xff0c;其中 0 表示 False &#xff0c;1 表示 True 。 非叶子节点 要么值为 2 要么值为 3 &#xff0c;其中 2 表示逻辑或 OR &#xff0c;3 表示逻辑与 AND 。 计算…

【推荐系统】User-Item CF:NGCF

&#x1f4a1; 本次解读的文章是 2019 年发表于 SIGIR 的一篇基于图卷积神经网络的用户物品协同过滤推荐算法论文&#xff0c; 论文将用户-物品交互信息建模为二分图&#xff0c;提出了一个基于二分图的推荐框架 Neural Graph Collaborative Filtering&#xff08;NGCF&#xf…

基于nodejs+vue的社区问答网站与设计

目 录 摘要 I Abstract II 1 绪论 1 1.1 选题背景 1 1.2 选题意义 1 1.3 研究内容 2 2 相关技术介绍 3 3 系统分析 5 3.1可行性分析 5 3.2 需求分析 5 3.2.1非功能性需求 5 3.2.2功能需求 6 3.3 系统用例 6 3.3.1 会员功能需求 6 …

【C++修炼之路】13. priority_queue及仿函数

每一个不曾起舞的日子都是对生命的辜负 stack&&queue一 . priority_queue介绍二. priority_queue的使用三. 仿函数3.1 仿函数的介绍3.2 仿函数的好处四.priority_queue模拟实现五.仿函数之日期比较一 . priority_queue介绍 priority_queue文档介绍 优先队列是一种容器…

机器学习实战(第二版)读书笔记(2)—— LSTMGRU

刚接触深度学习半年的时间&#xff0c;这期间有专门去学习LSTM &#xff0c;这几天读机器学习实战这本书的时候又遇到了&#xff0c;感觉写的挺好的&#xff0c;所以准备结合本书写一下总结方便日后回顾。如有错误&#xff0c;欢迎批评指正。 一、LSTM 优势&#xff1a;可在一…

ApiSix 开启SkyWalking插件,实现链路信息追踪

ApiSix 开启SkyWalking插件&#xff0c;实现链路信息追踪1 ApiSix开启SkyWalking插件1.1 修改config.yml配置文件1.2 在路由中开启SkyWalking插件2 创建两个SpringBoot服务&#xff0c;接入SkyWalking2.1 下载skywalking agent2.2 创建服务2.3 测试SkyWalking1 ApiSix开启SkyWa…

【链表】反转链表

BM1反转链表 描述 给定一个单链表的头结点pHead(该头节点是有值的&#xff0c;比如在下图&#xff0c;它的val是1)&#xff0c;长度为n&#xff0c;反转该链表后&#xff0c;返回新链表的表头。 数据范围&#xff1a; 0\leq n\leq10000≤n≤1000 要求&#xff1a;空间复杂度…

飞行员兄弟( 二进制枚举) --《算法竞赛进阶指南》

题目如下&#xff1a; 输入样例&#xff1a; --- ---- ---- ---输出样例&#xff1a; 6 1 1 1 3 1 4 4 1 4 3 4 4思路 or 题解&#xff1a; 数据量很小可以直接进行 搜索 在这里我使用 二进制枚举 的方法去寻找答案 时间复杂度&#xff1a;O(2n)O(2^n)O(2n) 我们二进制枚举…

计算机相关专业混体制的解决方案(事业编之学校与医院)

文章目录1、教师行业1.1 中小学教师资格1.2 高校教师资格证1.3 应聘中小学教师1.4 待遇2、医疗行业2.1 如何进入医院信息科2.2 医院信息科工作内容2.3 医院信息科待遇主要介绍三个方面&#xff1a; 1、招聘条件&#xff0c;要求是什么。 2、工作内容&#xff0c;需要我做什么工…

【哈希表】leetcode242.有效的字母异位词(C/C++/Java/Python/Js)

leetcode242.有效的字母异位词1 题目2 思路 &#xff08;字典解法&#xff09;3 代码3.1 C版本3.2 C版本3.3 Java版本3.4 Python版本3.5 JavaScript版本4 总结1 题目 题源链接 给定两个字符串 s 和 t &#xff0c;编写一个函数来判断 t 是否是 s 的字母异位词。 注意&#xf…

【JavaScript】多态(Symbol),迭代器接口,getter/setter,继承,instanceof

❤️ Author&#xff1a; 老九 ☕️ 个人博客&#xff1a;老九的CSDN博客 &#x1f64f; 个人名言&#xff1a;不可控之事 乐观面对 &#x1f60d; 系列专栏&#xff1a; 文章目录多态symbol迭代器接口实现数组的迭代器方法练习Getter/Setterstatic继承instanceof多态 我拿到一…

虽迟但到,我的2022年终总结

“子在川上曰&#xff0c;逝者如斯夫”。经历一年的居家办公、解封&#xff0c;终于在年底回归正常生活。时隔三年回老家过年&#xff0c;一切如故&#xff0c;好像疫情从没有来过。2022年对我来说是值得记忆的一年&#xff0c;在这一年里完成了买房这件人生大事&#xff0c;终…

SpringCloud学习笔记【part1】Spring Cloud Gateway网关的搭建、处理跨域问题

一、Spring Cloud Gateway 介绍 API网关出现的原因是微服务架构的出现&#xff0c;不同的微服务一般会有不同的网络地址&#xff0c;而外部客户端可能需要调用多个服务的接口才能完成一个业务需求。API 网关是介于客户端和服务器端之间的中间层&#xff0c;所有的外部请求都会先…

macos nginx 安装/卸载,启动/重启/关闭

1.安装/卸载 在macos中使用homebrew安装 brew install nginx,卸载brew uninstall nginx。homebrew安装 brew install xx&#xff0c;卸载brew uninstall xx 可以直接安装nginx-full&#xff0c;来安装echo模块 brew install nginx-full # 如果上面安装报错&#xff0c;需要按…

C 程序设计教程(18)—— 数组和指针(一):数组

C 程序设计教程&#xff08;18&#xff09;—— 数组和指针&#xff08;一&#xff09;&#xff1a;数组 该专栏主要介绍 C 语言的基本语法&#xff0c;作为《程序设计语言》课程的课件与参考资料&#xff0c;用于《程序设计语言》课程的教学&#xff0c;供入门级用户阅读。 目…