【2024】前端学习笔记14-JavaScript常用数据类型-变量常量

news2024/11/26 21:31:47

学习笔记

  • 1.JavaScript常用数据类型
    • 1.1.Number(数字)
    • 1.2.String(字符串)
    • 1.3.Boolean(布尔值)
    • 1.4.Null(空值)
    • 1.5.Undefined(未定义)
    • 1.6.Object(对象)
    • 1.7.Array(数组)
  • 2.变量和常量

1.JavaScript常用数据类型

1.1.Number(数字)

number类型包括整数浮点数,例如42(整数)和3.14(浮点数)。

let num1 = 20
let num2 = 2.54

JavaScript 中的数字是基于 IEEE 754 标准的双精度 64 位二进制格式。

可以进行各种算术运算,如加减乘除等。

包括一些特殊数值:Infinity(表示无穷大)和-Infinity(表示负无穷大),当一个数字超出了 JavaScript 所能表示的范围时就会出现这种情况,例如,1 / 0会得到Infinity。

NaN(Not a Number)用于表示非数字值,如0 / 0的结果是NaN。

1.2.String(字符串)

由零个或多个字符组成,字符可以是字母、数字、符号等。

字符串需要用引号(单引号’或双引号")包裹。例如’Hello, World!'或"JavaScript"。

在JavaScript中,单引号和双引号都是可以的。

let str1 = 'Hello';
let str2 = "JavaScript";

1.3.Boolean(布尔值)

只有两个值:truefalse,用于表示逻辑上的真和假。

布尔值通常用于条件判断和循环控制。

1.4.Null(空值)

只有一个值null,用于表示一个空的或不存在的引用。

通常用于初始化一个变量,表示该变量目前没有指向任何对象。

let myVariable = null;

1.5.Undefined(未定义)

当一个变量被声明但没有被赋值时,它的值是undefined。

let variable;
console.log(variable); // 输出 undefined

这里variable被声明了,但是没有被赋值,所以它的值是undefined。
需要注意的是,const声明的变量如果没有初始化,会直接报错,因为const声明的变量必须在声明时赋值。

1.6.Object(对象)

对象是一种复杂的数据类型,它可以包含多个属性和方法。

属性是键 - 值对,其中键是字符串,值可以是任何数据类型。

<body>
    <script>
        let person = {
            name: 'John',
            age: 30,
            sayHello: function() {
                console.log('hello,my friend');
            }
        };
        console.log(person.name);
        console.log(person.age);
        // 获取元素也可以使用[]方法
        console.log(person["age"]);
        person.sayHello();
    </script>
</body>

展示效果:可以在网页按F12的控制台中查看输出

在这里插入图片描述

1.7.Array(数组)

数组是一种特殊的对象,用于存储多个有序的数据。

数组中的每个元素可以是任何数据类型,并且可以通过索引来访问。

let colors = ['blue', 'green', 'red'];

添加元素:

push () 方法:在数组的末尾添加一个或多个元素,并返回新的数组长度。

let newColors = colors.push('yellow');

unshift () 方法:在数组的开头添加一个或多个元素,并将原来的元素向后移动,并返回新的数组长度。

let newColors2 = colors.push('black');

示例:

<body>
    <script>
        let colors = ['blue', 'green', 'red'];
        let newColors = colors.push('yellow');
        let newColors2 = colors.unshift('black');
        console.log(colors);
        console.log(newColors);
        console.log(newColors2);
    </script>
</body>

添加的元素是向原数组添加,所以colors是返回添加后的元素

展示效果:

在这里插入图片描述

删除元素:

pop () 方法:删除数组的最后一个元素,并返回被删除的元素。

变量名.pop()

shift () 方法:删除数组的第一个元素,并返回被删除的元素。

变量名.shift()

修改元素:

可以直接通过索引来修改数组中的元素。

let scores = [80, 90, 70];
// 注意元素从0开始,第一个元素是0
scores[1] = 95;
console.log(scores); // 输出[80, 95, 70]

查找元素:

indexOf () 方法:返回指定元素在数组中第一次出现的索引,如果不存在则返回 - 1。

let names = ['Alice', 'Bob', 'Charlie', 'Bob'];
let index = names.indexOf('Bob');
console.log(index); // 输出1

lastIndexOf () 方法:返回指定元素在数组中最后一次出现的索引,如果不存在则返回 - 1。

let index2 = names.lastIndexOf('Bob');
console.log(index2); // 输出3

2.变量和常量

var:

var是 JavaScript 中最早用于定义变量的关键字。例如:var x = 10;。

使用var定义的变量会存在变量提升的现象。这意味着变量的声明会被提升到当前作用域的顶部。

let:

let也用于定义变量,它的基本语法和var类似,例如:let z = 30;。

与var不同,let定义的变量不存在变量提升。

const:

const用于定义常量。一旦使用const定义了一个变量并赋值,就不能再重新赋值。例如:const PI = 3.14159;

注意:JavaScript中定义变量或常量不用指定类型。

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

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

相关文章

从WIFI到NB-IoT,探秘智能门锁的高科技接入方式

我是小米,一个喜欢分享技术的29岁程序员。如果你喜欢我的文章,欢迎关注我的微信公众号“软件求生”,获取更多技术干货! Hello大家好!我是小米,一个29岁、活力满满、热爱分享技术的小米!今天,我想和大家聊聊一个与智能家居密切相关的技术话题——智能门锁的接入方式。无…

标准正态分布的数据 tensorflow 实现正态分布图,python 编程,数据分析和人工智能

import tensorflow as tf import matplotlib.pyplot as plt # 设置随机种子以获得可重复的结果 tf.random.set_seed(42) # 生成正态分布的数据 # mean0 和 stddev1 表示生成标准正态分布的数据 # shape(1000,) 表示生成1000个数据点 data tf.random.normal(mean0, stddev1, …

DOS 命令学习笔记

一、DOS 简介 DOS 是 Disk Operating System 的缩写&#xff0c;即磁盘操作系统。它是一种早期的计算机操作系统&#xff0c;用于管理计算机的硬件资源和软件资源&#xff0c;提供用户与计算机交互的界面。 二、基本 DOS 命令 &#xff08;一&#xff09;Dir 命令 功能&…

【汇编语言】寄存器(CPU工作原理)(二)—— 汇编指令的基础操作

文章目录 前言正文——&#xff08;一气呵成解决本文内容&#xff09;结语 前言 &#x1f4cc; 汇编语言是很多相关课程&#xff08;如数据结构、操作系统、微机原理&#xff09;的重要基础。但仅仅从课程的角度出发就太片面了&#xff0c;其实学习汇编语言可以深入理解计算机底…

YoloV8改进策略:BackBone改进|CAFormer在YoloV8中的创新应用,显著提升目标检测性能

摘要 在目标检测领域,模型性能的提升一直是研究者和开发者们关注的重点。近期,我们尝试将CAFormer模块引入YoloV8模型中,以替换其原有的主干网络,这一创新性的改进带来了显著的性能提升。 CAFormer,作为MetaFormer框架下的一个变体,结合了深度可分离卷积和普通自注意力…

【简码短链】使用Selenium实现UI自动化测试

1.环境准备 Chrome浏览器 版本为版本 129.0.6668.90&#xff08;正式版本&#xff09; &#xff08;64 位&#xff09; 129版本的Chrome浏览器的驱动,将webdriver放到jdk所在的bin目录下 在命令行中输入:chromedriver验证是否成功 打开IDEA,创建Maven项目,在pom.xml导入所需…

Gridview配置数据源--信任服务器证书

目录 背景过程Gridview配置数据源GridView与数据源&#xff1a;数据库连接与安全&#xff1a;信任服务器证书&#xff1a;配置信任服务器证书&#xff1a;注意事项&#xff1a; 生成连接字符串程序运行报错问题解决 总结 背景 Gridview配置数据源之后&#xff0c;程序报错 过…

前端编程艺术(4)---JavaScript进阶(vue前置知识)

目录 1.变量和常量 2.模版字符串 3.对象 4.解构赋值 1.数组的解构 2.对象的解构 5.箭头函数 6.数组和对象的方法 7.扩展运算符 8.Web存储 9.Promise 10.AsyncAwait 11.模块化 1.变量和常量 JavaScript 中的变量和常量是用于存储数据的标识符。变量可以被重新赋值&am…

[Linux] Linux 初识进程地址空间 (进程地址空间第一弹)

标题&#xff1a;[Linux] Linux初识进程地址空间 个人主页水墨不写bug &#xff08;图片来源于AI&#xff09; 目录 一、什么是进程地址空间 二、为什么父子进程相同地址的变量的值不同 三、初识虚拟地址、页表 一、什么是进程地址空间 其实&#xff0c;在很久之前&#xf…

数据结构之树(3)

一、森林和树的转换 重要&#xff01; 树->二叉树 由于孩子兄弟链式存储和二叉树链式存储本质相同&#xff0c;故树可转换为二叉树。 森林->二叉树 森林&#xff1a;m棵互不相交的树的集合 森林->树 树->二叉树 森林中各个树的根节点之间视为兄弟关系 二、树…

ORB-SLAM复现时遇到的问题(复现失败,切莫当做教程)

背景 本人的环境&#xff1a;使用ubuntu20.04&#xff0c;opencv4 问题 进行Build DBoW2. Go into Thirdparty/DBoW2/ and execute:时&#xff0c;运行make时出错 我安装的opencv4&#xff0c;在 OpenCV 3 和更高版本中&#xff0c;头文件的路径可能已更改。例如&#xff0…

科普篇--- 什么是硬件在环测试?

我是穿拖鞋的汉子&#xff0c;魔都中坚持长期主义的汽车电子工程师。 老规矩&#xff0c;分享一段喜欢的文字&#xff0c;避免自己成为高知识低文化的工程师&#xff1a; 屏蔽力是信息过载时代一个人的特殊竞争力&#xff0c;任何消耗你的人和事&#xff0c;多看一眼都是你的不…

线程安全的单例模式 | 可重入 | 线程安全 |死锁(理论)

&#x1f308;个人主页&#xff1a; 南桥几晴秋 &#x1f308;C专栏&#xff1a; 南桥谈C &#x1f308;C语言专栏&#xff1a; C语言学习系列 &#x1f308;Linux学习专栏&#xff1a; 南桥谈Linux &#x1f308;数据结构学习专栏&#xff1a; 数据结构杂谈 &#x1f308;数据…

业务封装与映射 -- OTUk/ODUk/OPUk比特速率和容量

介绍OTUk&#xff0c;ODUk&#xff0c;OPUk&#xff0c;OTUCn&#xff0c;ODUCn&#xff0c;OPUCn的比特速率和容量。 OTN支持超100 Gbit/s&#xff0c;100 Gbit/s&#xff0c;40 Gbit/s&#xff0c;10 Gbit/s&#xff0c;2.5 Gbit/s&#xff0c;1.25 Gbit/s等多种线路速率。 …

SAP MM学习笔记 - 豆知识10 - OMSY 初期化会计期间,ABAP调用MMPV/MMRV来批量更新会计期间(TODO)

之前用MMRV&#xff0c;MMPV来一次一个月来修改会计期间。 如果是老的测试机&#xff0c;可能是10几年前的&#xff0c;一次1个月&#xff0c;更新到当前期间&#xff0c;搞个100多次&#xff0c;手都抖。 SAP MM学习笔记 - 错误 M7053 - Posting only possible in periods 2…

Python水循环标准化对比算法实现

&#x1f3af;要点 算法区分不同水循环数据类型&#xff1a;地下水、河水、降水、气温和其他&#xff0c;并使用相应标准化降水指数、标准化地下水指数、标准化河流水位指数和标准化降水蒸散指数。绘制和计算特定的时间序列比较统计学相关性。使用相关矩阵可视化集水区和显示空…

每日OJ题_牛客_最长无重复子数组_滑动窗口_C++_Java

目录 牛客_最长无重复子数组_滑动窗口 题目解析 C代码1暴力 C代码2滑动窗口 Java代码滑动窗口 牛客_最长无重复子数组_滑动窗口 最长无重复子数组_牛客题霸_牛客网 (nowcoder.com) 描述&#xff1a; 给定一个长度为n的数组arr&#xff0c;返回arr的最长无重复元素子数组…

【Linux】Ubuntu20.04上使用RabbitVCS的图形化SVN

文章目录 1、RabbitVCS1.1、RabbitVCS 介绍1.2、RabbitVCS 主要功能1.3、Ubuntu下 TortoiseSVN 替代者 2、安装2.1、命令安装2.2、安装使用2.3、使用权限 3、解决SVN无法保存密码问题3.1、问题描述3.2、解决方法 1、RabbitVCS 1.1、RabbitVCS 介绍 它是一款Linux系统下的图形…

jsencrypt实现js加密的另外一种方式(使用node-jsencrypt库)

在上一篇文章中&#xff0c;实现了使用jsencrypt模块RSA加密实现。 参考链接&#xff1a;记录使用crypto-js、jsencrypt实现js加密的方法-CSDN博客 在实现的过程中&#xff0c;会提示出错&#xff1a;ReferenceError: window is not defined &#xff0c;而且需要修改jsencry…