【H2O2|全栈】JS入门知识(一)

目录

JS入门

前言

准备工作

JS标签和文件

变量

数据类型

字符串

变量的交换

数据类型获取

数据类型转换

面试题

提问框和提示框

提问框

提示框

​编辑​编辑控制台输出

​编辑转义字符

结束语


JS入门

前言

本系列博客主要分享JavaScript的基础语法知识,本期为第一期,包含一些简单的js语法,以及一道js的面试题。

叠甲:非专业,仅参考。

准备工作

软件:【参考版本】Visual Studio Code

插件(扩展包):Open in browser, Live Preview, Live Server

浏览器版本:Chrome

系统版本: Win10/11/其他非Windows版本

*我的电脑是Win10的版本,仅供参考*

JS标签和文件

JS的标签如下:

<script></script>

这个标签可以放在head标签中,也可以放在body标签前后以及body标签中,中间包裹JavaScript代码。

由于HTML的解析顺序是从上至下的,而我们的JS常常需要获取一些元素或者变量的值,因此我们最好等所有的HTML代码解析完之后,再解析JS标签。

所以,一般来说script标签写在body标签之后

当然,由于我们的WEB需要分离为三层,所以我们通常把JS代码防止在专门的.js文件中。引入JS文件的方式如下:

<script src="./js/index.js"></script>

变量

js最基础的用于交互的方式就是通过获取变量。变量通常使用var定义,比如一个最基本的变量定义如下:

var a

在js中,使用 = 符号进行赋值,=之前为被赋值的变量,之后为赋的。 

比如,我需要给a变量赋值数字5,可以这样:

var a = 5

赋值时将会自动识别后面的数据类型

数据类型

按照赋值的不同,变量将被设置为不同的数据类型。主要分为两类——基础数据类型和复杂数据类型。

基础数据类型

类型类型含义举例
number数字(数值)5
string字符串"abc"
boolean布尔值true/false
undefined未定义类型\
null\

复杂数据类型

类型类型含义举例
object对象

{

        name:"xxx";

        year:18;

}

function函数体function fn()
array数组[1,  2,  3]
Date*日期*
正则*正则表达式*

标注*号的暂时不要求掌握,后面会有规范的书写格式。  

字符串

字符串通常用 "" 表示,获取字符串的长度可以使用类似下面的代码:

var str = "abc"
var len = str.length

字符串类型与其他基础类型的数据相加,会将其他类型的数据自动转化为字符串。

比如,对于下面的代码:

var a = "4"
var b = 6
var c = a + b
console.log(c)

那么,c输出的值应当是46,而不是我们认知里的10,这就是因为数字 b = 6 被转化为字符串"6"了。

变量的交换

如果想要实现两个变量之间的数据交换,可以利用一个临时变量temp来完成。

实现的js代码如下:

var a = 2
var b = 3
var temp = a
a = b
b = temp

此时我们再输出A和B的值,可以看到两者的值发生了交换。

数据类型获取

获取数据类型的代码为typeof,对于基础的数据类型而言,通过该方式获取的数据类型就是他们自己的数据类型。但是,null类型是较为特殊的,它会被识别为object类型。

而对于复杂数据类型而言,object和array类型都会被识别为object类型,function类型还是会被识别为函数体function。

数据类型转换

想让数据类型转化为字符串,通常来说有下面三种方式(a为需要转化类型的变量):

  • a.toString()
  • String(a)
  • 用字符串与需要进行转换的变量进行相加("" + a)

想让数据类型转化为数字,通常来说也有三种方式与之对应:

  • ParseInt(a) 解析为整数   ParseFloat(a)解析为浮点数
  • Number(a)
  • 利用运算进行转化  a-0,a*1,+a(直接在变量前添加一个 + 号)

面试题

Q:JS有哪些数据类型?

A:分为基础数据类型和复杂数据类型。

基础数据类型有:number,string,boolean,undefined,null

复杂数据类型有:object,function,array,Date,正则

提问框和提示框

这两种js元素在浏览器中均表现为弹窗效果,具体相关内容如下:

提问框

提问框用于接收用户输入的信息,通常来说会赋值给一个变量,供之后使用。

提问框的js代码如下:

var a = prompt("提问文字")

在网页中的弹窗效果如下:

提示框

提示框用于为用户提示指定的信息。有两种提示框,分别如下:

alert("提示文字1")

confirm("提示文字2")

其中第一种只有确认,第二种可以选择取消,效果分别如下:

控制台输出

比如,我们需要在浏览器的控制台输出我们的变量值,对应的js代码如下:

var a = 5
console.log(a)

在浏览器控制台的展示的效果如下:

转义字符

在字符串中,有少数的字符比较特殊,无法在字符串中直接体现出来。这个时候就需要对相关的字符进行转义。

这里展示常见的4个转义字符:

写法含义
\n换行
\t占位符
\b空格
\\输出一个反斜杠

结束语

本期的内容到这里就结束了,主要是js的基础标签、文件,变量相关,弹窗相关,字符相关以及控制台输出语句等内容。在后续的本系列博客中,我会继续更新js的基础语法知识,并适当地配合上一些案例。

在全栈领域,博主也只不过是一个普通的萌新而已。本系列的博客主要是记录一下自己学习的一些经历,然后把自己领悟到的一些东西总结一下,分享给大家。

文章全篇的操作过程都是笔者亲自操作完成的,一些定义性的文字加入了笔者自己的很多理解在里面,所以仅供参考。如果有说的不对的地方,还请谅解。

==期待与你在下一期博客中再次相遇==

——还在漏气的【H2O2】

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

RNA-seq全流程

第一部分&#xff1a;脚本的初始设置与参数解析 #!/bin/bash# 检查输入参数 if [ "$#" -lt 1 ]; thenecho "Usage: $0 -f <sample_file> -d <data_directory> -s <script_directory> -g <group_file>"exit 1 fi# 使用 R 语言的 a…

2025推荐选题|基于Springboot和vue的智慧阅读管理系统

作者简介&#xff1a;Java领域优质创作者、CSDN博客专家 、CSDN内容合伙人、掘金特邀作者、阿里云博客专家、51CTO特邀作者、多年架构师设计经验、多年校企合作经验&#xff0c;被多个学校常年聘为校外企业导师&#xff0c;指导学生毕业设计并参与学生毕业答辩指导&#xff0c;…

Java - WebSocket

一、WebSocket 1.1、WebSocket概念 WebSocket是一种协议&#xff0c;用于在Web应用程序和服务器之间建立实时、双向的通信连接。它通过一个单一的TCP连接提供了持久化连接&#xff0c;这使得Web应用程序可以更加实时地传递数据。WebSocket协议最初由W3C开发&#xff0c;并于2…

【CSS】houdini自定义CSS属性实现渐变色旋转动画

现有一段代码&#xff0c;在不旋转整个元素的前提下&#xff0c;渐变背景无法应用动画 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initia…

专业模拟训练头显,Varjo XR-4 如何开启虚拟仿真新模拟时代

虚拟仿真模拟训练是提升技能熟练度与工作安全性的有效解决方案&#xff0c;Varjo XR-4作为专业模拟训练头显&#xff0c;凭借其出色的技术特性和性能&#xff0c;正在引领虚拟仿真模拟训练进入一个全新的时代。 一、卓越的视觉体验 高分辨率显示器&#xff1a;Varjo XR-4配备…

计算机毕业设计 基于Python的美术馆预约系统的设计与实现 Python毕业设计 Python毕业设计选题【附源码+安装调试】

博主介绍&#xff1a;✌从事软件开发10年之余&#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精…

三子棋(C 语言)

目录 一、游戏设计的整体思路二、各个步骤的代码实现1. 菜单及循环选择的实现2. 棋盘的初始化和显示3. 轮流下棋及结果判断实现4. 结果判断实现 三、所有代码四、总结 一、游戏设计的整体思路 &#xff08;1&#xff09;提供一个菜单让玩家选择人机对战、玩家对战或者退出游戏…

大厂面试真题-组合和聚合的区别是什么

组合和聚合比较类似&#xff0c;二者都表示整体和部分之间的关系。 聚合关系的特点是&#xff1a;整体由部分构成&#xff0c;但是整体和部分之间并不是强依赖的关系&#xff0c;而是弱依 赖的关系&#xff0c;也就是说&#xff0c;即使整体不存在了&#xff0c;部分仍然存在…

Zabbix监控vCenter虚拟机

1. vcenter上配置snmp agent 如果配置 vCenter Server Appliance SNMP 代理以用于轮询,则它可以侦听和响应来自 SNMP 管理客户端系统的请求,如 GET、GETNEXT 和 GETBULK 请求. 使用root身份进入vcenter命令行,开启snmp代理 Command> snmp.enable Command> snmp.set…

正则表达式 | Python、Julia 和 Shell 语法详解

正则表达式在网页爬虫、脚本编写等众多任务中都有重要的应用。为了系统梳理其语法&#xff0c;以及 Python、Julia 和 Shell 中与正则表达式相关的工具&#xff0c;本篇将进行详细介绍。 相关学习资源&#xff1a;编程胶囊。 基础语法 通用语法 在大多数支持正则表达式的语…

24/10/14 视觉笔记 图像拼接融合

图像拼接分为四步 1.特征点提取 2.特征点匹配 3.仿射矩阵计算 4.图像拼接与融合 1.特征提取 找到图像中具有显著性信息点&#xff0c;并计算该点的特征表达 def detectAndDescrible(img):#构建STFT特征检测器sift cv2.SIFT_create()#特征提取kps,features sift.detectA…

3-3 AUTOSAR RTE 对SR Port的实现

返回总目录->返回总目录<- 目录 一、前言 二、显式访问 三、隐式访问 四、队列调用(Queued) 五、无效数据元素 一、前言 RTE作为SWC和BSW之间的通信机构,支持Sender-Receiver方式实现ECU内及ECU间的通信。 对于Sender-Receiver Port支持三种模式: 显式访问:若…

京东零售数据湖应用与实践

作者&#xff1a;陈洪健&#xff1a;京东零售大数据架构师&#xff0c;深耕大数据 10 年&#xff0c;2019 年加入京东&#xff0c;主要负责 OLAP 优化、大数据传输工具生态、流批一体、SRE 建设。 当前企业数据处理广泛采用 Lambda 架构。Lambda 架构的优点是保证了数据的完整性…

LeetCode|70.爬楼梯

这道题很像斐波那契数列&#xff0c;但是初始值不同&#xff0c;也有动态规划的解法&#xff0c;但是一开始我想到的是递归写法。现在我们站在第n阶台阶&#xff0c;那么&#xff0c;我们上一步就有两种可能&#xff1a;1、我们从第n-1阶台阶走一步上来的&#xff1b;2、我们从…

弹出“xinput1_3.dll文件缺失”的错误要怎么处理?一键修复xinput1_3.dll

当你尝试打开游戏或应用时&#xff0c;如果弹出“xinput1_3.dll文件缺失”的错误&#xff0c;请记得及时处理。这个文件是DirectX中用于处理游戏控制器输入的关键组件。这个问题可以通过几个简单的步骤轻松解决。本指南将教你如何快速恢复或替换丢失的xinput1_3.dll文件&#x…

免费Excel工作表同类数据合并工具

下载地址&#xff1a;https://pan.quark.cn/s/81b1aeb45e4c 在 Excel 表格里&#xff0c;当我们试图手动将多行同类数据合并为一行时&#xff0c;会遭遇诸多棘手的困难以及繁杂的操作流程。在确定哪些数据属于可合并的同类数据时&#xff0c;单纯依靠人工进行对比&#xff0c;极…

SQL数据库刷题sql_day33(连续3次为球队得分的球员名单)

描述 两支篮球队进行了激烈的比赛&#xff0c;比分交替上升。比赛结束后&#xff0c;你有一个两队分数的明细表&#xff08;名称为“分数表”&#xff09;。 表中记录了球队、球员号码、球员姓名、得分分数及得分时间。现在球队要对比赛中表现突出的球员进行奖励。 问题&#x…

用最短长度的绳子把整个花园围起来

给定一个数组 trees&#xff0c;其中 trees[i] [xi, yi] 表示树在花园中的位置。 你被要求用最短长度的绳子把整个花园围起来&#xff0c;因为绳子很贵。只有把 所有的树都围起来&#xff0c;花园才围得很好。 返回恰好位于围栏周边的树木的坐标。 示例 1: 输入: points […

MySQL 的数据类型

1.整数类型 1.1 tinyint tinyint 为小整数类型&#xff0c;存储空间为1个字节&#xff08;8位&#xff09;&#xff0c;有符号范围-128 ~ 127&#xff0c;无符号范围 0 ~ 255,此类型通常在数据库中表示类型的字段&#xff0c;如某一字段 type 表示学科,其中 “type1” 表示语文…

实战篇:(二)React 创建项目并连接 MySQL 后台的实战教程

React 创建项目并连接 MySQL 后台的实战教程 一、项目概述 本篇博客将介绍如何使用 React 搭建前端项目&#xff0c;并通过 Node.js 和 MySQL 实现简单的后台数据连接。通过这个项目&#xff0c;你将掌握从前端到后端数据库的基础开发流程&#xff0c;适合初学者或正在项目实…