Javascript周学习小结(初识,变量,数据类型)
JS的三大书写方式
行内式
如图所示:

几点说明:
JS的行内式写在HTML的标签内部,(常以on开头),如onclick
行内式常常使用单引号括住字符串以区分HTML的双引号
可读性差,不建议使用
引号易出错,不建议使用
特殊情况下使用
内嵌式
如图所示:

几点说明:
JS内嵌式写在<script>标签内部
是JS最常用的书写方式
外部式
如图所示:

几点说明:
需要写在独立的.js文件内部
当JS的代码量较大时,推荐使用
与HTML相分离,既美观,同时满足文件复用
输出与输入语句
prompt
当调用该函数时,网页上会弹出一个输入框,允许用户输入数据,所输入数据可以赋值给一个变量,该变量的类型为字符串型,如图所示:


alert
当调用该函数时,网页上会弹出一个警示框,提示所输入的语句,如图所示:


console.log()
所输入的信息呈现在控制台,方便程序员检测代码,如图所示:


变量
变量是程序在内存中申请的一块用于存储数据的空间,可以理解为一个小容器
语法
一个变量的构成等于:var 变量名 = 值,var是关键字,可有可无。
同时,一个变量也可以暂时只声明不赋值,留在后面需要时再赋值。
初始化
一个变量在声明的同时赋值谓之“变量的初始化”,如图所示:

注意事项
第一,变量可以重新赋值,无需再声明一次变量,如图:

第二,允许同时声明多个变量,只需要用一个var声明即可,变量名间用逗号隔开,如图:

第三,当变量声明未赋值时,变量值为undefined,意为”没定义“,如图:控制台显示undefined


第四,当变量无声明无赋值时,程序会报错,如图:


第五,变量可以直接赋值,无需加var,如图:


第六,命名规范,如图:

数据类型
特点
1.JS的数据类型由程序运行过程中根据等号右边的值来确定,由于JS不像C等语言在声明变量时需要指定变量类型(char,int等),因而JS只有在看到变量名右边的值类型时才能确认该数据的具体类型。
2.动态特性,JS的数据类型可以自由改变,如图所示:age从数字型转变为字符串型


获取数据类型
JS中使用typeof + 变量名 的形式获取该变量的数据类型,如图所示:数据类型从number转化为string


简单数据类型
数字型 (number)
进制问题 数字若以0开头表示该数字为八进制数,若以0x开头表示该数字为十六进制数;
数字型的最值 JS中的数字具有范围,最大值为Number.MAX_VALUE,最小值为Number.MIN_VALUE;
特殊数值 在JS中,Infinity表示无穷大,-Infinity表示无穷小。

is NaN()函数用于判断一个数据是否为数字型,当其为数字型时返回值为false,否则为true

字符串型 (string)
第一,字符串的嵌套
引号会与其最临近的同类型的引号匹配,若想在字符串中包含一对引号,可采用外单内双,外双内单,当最外的引号为单引号时,内部引号为双引号;当最外的引号为双引号时,内部引号为单引号。如图所示:

第二,字符串的长度
利用length可以求取字符串的长度,如图所示:

第三,字符串的拼接
字符串+任意类型 ==新字符串,如图所示:

布尔型 (boolean)
布尔类型的本质就是,true实际是就是数字1,false就是数字0。
undefined
当一个变量只声明而不赋值,那么它的数据类型就为undefined型。
object
null在js中就属于object型,在后续的学习中我们在探索object型。
prompt的输入类型
prompt的输入类型为string,这意味着我们输入的数字无法直接参与运算,需要转化,待会会将转化,如图所示:

数据类型的转化
转化为字符串型
其他类型数据转化为字符串型有三种方式:1 变量名.toString() , 2. String(变量名) 3. num+字符串 (务必牢记,String中的'S'需要大小,被坑过),如图所示:

转化为数字型
转化方式有四种,只需要记住前面两种,其他作为了解
第一种,parseInt可以将将字符串型转化为数字型,也可去除前面为数字的字符串中其余字符串,如图:

第二种,parseFloat可以将将字符串型转化为数字型,可以保留带小数字符串中的所有小数点,其他功能与parseInt一样,此处不赘述。
第三种,调用Number(字符串)函数,如图所示:

第四种,隐式类型转化,如'12'-0可以转化为12 - 0 得到12或'12' - '1'的到11,如图所示:

转化为布尔型
转化为布尔型的函数位 Boolean(变量名),除了 '', 0, NaN, null, undefined会被转化为false之外,其他数据都转化为true,如图所示:

本周学习小结到此结束,完结撒花!💐💐💐

相关文章:
Javascript周学习小结(初识,变量,数据类型)
JS的三大书写方式行内式如图所示:几点说明:JS的行内式写在HTML的标签内部,(常以on开头),如onclick行内式常常使用单引号括住字符串以区分HTML的双引号可读性差,不建议使用引号易出错,不建议使用特殊情况下使…...
C语言-基础了解-10-C函数
C函数 一、C函数 函数是一组一起执行一个任务的语句。每个 C 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数。 您可以把代码划分到不同的函数中。如何划分代码到不同的函数中是由您来决定的,但在逻辑上&…...
【LeetCode】剑指 Offer(16)
目录 题目:剑指 Offer 33. 二叉搜索树的后序遍历序列 - 力扣(Leetcode) 题目的接口: 解题思路: 代码: 过啦!!! 写在最后: 题目:剑指 Offer …...
第三十九章 linux-并发解决方法二(互斥锁mutex)
第三十九章 linux-并发解决方法二(互斥锁mutex) 文章目录第三十九章 linux-并发解决方法二(互斥锁mutex)互斥锁的定义与初始化互斥锁的DOWN操作互斥锁的UP操作用count1的信号量实现的互斥方法还不是Linux下经典的用法,…...
脚本方式本地仓库jar包批量导入maven私服
脚本内容,将以下内容保存为mavenimport.sh,放置于需要上传的目录下,可以是顶层目录,或者某个分包的目录,若私服已有待上传的包,则执行会被替换 #!/bin/bash # copy and run this script to the root of th…...
【c++】引用的学习
引用的定义和声明 引用是一种别名,它允许使用与原变量相同的内存位置。在C中,引用是使用&符号来定义的。引用必须在定义时初始化,并且可以与原变量分别使用。 int a 10; int& b a; // 定义了一个引用b,它指向a引用的作用…...
linux 软件安装及卸载
1.联网在线安装及卸载ubuntu环境下:使用apt-get 工具apt-get install - 安装软件包apt-get remove - 移除(卸载)软件包CentOS环境下:使用yum工具 (银河麒麟系统属于centos)yum install - 安装软件包yum rem…...
XShell连接ubuntu20.04.LTS
1 下载XshellXShell官方下载地址打开XSHELL官方下载地址,我们可以选择【家庭和学校用户的免费许可证】,输入邮箱之后即可获得下载链接安装非常简单,跟着提示进行即可。2 连接ubuntu2.1 查看ubuntu的ip地址输入命令查看ip地址ifconfig刚开始可…...
【FPGA】Verilog:MSI/LSI 组合电路之解码器 | 多路分解器
写在前面:本章将理解编码器与解码器、多路复用器与多路分解器的概念,通过使用 Verilog 实现多样的解码器与多路分解器,通过 FPGA 并使用 Verilog 实现。 Ⅰ. 前置知识 0x00 解码器与编码器(Decoder / Encoder) 解码器…...
深入理解JDK动态代理原理,使用javassist动手写一个动态代理框架
文章目录一、动手实现一个动态代理框架1、初识javassist2、使用javassist实现一个动态代理框架二、JDK动态代理1、编码实现2、基本原理(1)getProxyClass0方法(2)总结写在后面一、动手实现一个动态代理框架 1、初识javassist Jav…...
一、策略模式的使用
1、策略模式定义: 策略模式(Strategy Pattern)定义了一组策略,分别在不同类中封装起来,每种策略都可以根据当前场景相互替换,从而使策略的变化可以独立于操作者。比如我们要去某个地方,会根据距…...
Verilog使用always块实现时序逻辑
这篇文章将讨论 verilog 中一个重要的结构---- always 块(always block)。verilog 中可以实现的数字电路主要分为两类----组合逻辑电路和时序逻辑电路。与组合逻辑电路相反,时序电路电路使用时钟并一定需要触发器等存储元件。因此,…...
面向对象设计模式:行为型模式之迭代器模式
一、迭代器模式,Iterator Pattern aka:Cursor Pattern 1.1 Intent 意图 Provide a way to access the elements of an aggregate object sequentially without exposing its underlying representation. 提供一种按顺序访问聚合对象的元素而不公开其基…...
如何快速在企业网盘中找到想要的文件
现在越来越多的企业采用企业网盘来存储文档和资料,而且现在市面上的企业网盘各种各样。在使用企业网盘过程中,很多用户会问到企业网盘中如何快速搜索文件的问题。但是无论是“标签”功能还是普通的“关键词搜索”功能,都是单层级的࿰…...
香橙派5使用NPU加速yolov5的实时视频推理(二)
三、将best.onnx转为RKNN格式 这一步就需要我们进入到Ubuntu20.04系统中了,我的Ubuntu系统中已经下载好了anaconda,使用anaconda的好处就是可以方便的安装一些库,而且还可以利用conda来配置虚拟环境,做到环境与环境之间相互独立。…...
算法练习-二分查找(一)
算法练习-二分查找 1 代码实现 1.1 非递归实现 public int bsearch(int[] a, int n, int value) {int low 0;int high n - 1;while (low < high) {int mid (low high) / 2;if (a[mid] value) {return mid;} else if (a[mid] < value) {low mid 1} else {high …...
通用业务平台设计(五):预警平台建设
前言 在上家公司,随着业务的不断拓展(从支持单个国家单个主体演变成支持多个国家多个主体),对预警的诉求越来越紧迫;如何保障业务的稳定性那?预警可以帮我们提前甄别风险,从而让我们可以在风险来临前将其消灭ÿ…...
Windows openssl-1.1.1d vs2017编译
工具: 1. perl(https://strawberryperl.com/) 2. nasm(https://nasm.us/) 3. openssl源码(https://www.openssl.org/) 可以自己去下载 或者我的网盘提供下载: 链接:…...
【深蓝学院】手写VIO第2章--IMU传感器--笔记
0. 内容 1. 旋转运动学 角速度的推导: 左ω∧\omega^{\wedge}ω∧,而ω\omegaω是在z轴方向运动,θ′[0,0,1]T\theta^{\prime}[0,0,1]^Tθ′[0,0,1]T 两边取模后得到结论: 线速度大小半径 * 角速度大小 其中,对旋转矩…...
网络基础(二)之HTTP与HTTPS
应用层 再谈 "协议" 协议是一种 "约定". socket api的接口, 在读写数据时, 都是按 "字符串" 的方式来发送接收的. 如果我们要传输一些"结构化的数据" 怎么办呢? 为什么要转换呢? 如果我们将struct message里面的信息…...
React Native 导航系统实战(React Navigation)
导航系统实战(React Navigation) React Navigation 是 React Native 应用中最常用的导航库之一,它提供了多种导航模式,如堆栈导航(Stack Navigator)、标签导航(Tab Navigator)和抽屉…...
Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...
Java 加密常用的各种算法及其选择
在数字化时代,数据安全至关重要,Java 作为广泛应用的编程语言,提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景,有助于开发者在不同的业务需求中做出正确的选择。 一、对称加密算法…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...
中医有效性探讨
文章目录 西医是如何发展到以生物化学为药理基础的现代医学?传统医学奠基期(远古 - 17 世纪)近代医学转型期(17 世纪 - 19 世纪末)现代医学成熟期(20世纪至今) 中医的源远流长和一脉相承远古至…...
CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝
目前已有一号通短信、阿里云短信、腾讯云短信扩展 扩展入口文件 文件目录 crmeb\services\sms\Sms.php 默认驱动类型为:一号通 namespace crmeb\services\sms;use crmeb\basic\BaseManager; use crmeb\services\AccessTokenServeService; use crmeb\services\sms\…...
Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换
目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...
