JavaScript基础篇

目录

1.初始JavaScript

2.Js数据类型

2.1强制转换类型

1.转换为String类型

2.转换为Number类型

3.转换为 Boolean

4.转义符

2.2运算符

2.3分支结构


1.初始JavaScript

<!-- 1. 文件引入 -->
<!--<script src="./js/index.js"></script>-->
<!-- 2.使用标签  定义script代码区域 -->

2.Js数据类型

JavaScript中的变量是无类型的,即变量可以在不同的时间保存不同类型的值。例如,一个变量可以先保存一个字符串,然后再保存一个数字。

基本:

  1. String(字符串):用于表示文本数据,例如 "Hello World"。

  2. Number(数值):用于表示数字,包括整数和浮点数,例如 10、3.14。

  3. Boolean(布尔值):用于表示逻辑值,只有两个可能的值:true(真)和false(假)。

  4. Undefined(未定义):表示变量声明但未赋值时的默认值。

  5. Null(空值):表示变量目前没有值。

  6. Symbol(符号):ES6新增的一种数据类型,表示独一无二的值

复杂:

  1. Object(对象):用于存储多个键值对的集合。对象可以包含函数、数组、日期等其他数据类型。
  2. Function(函数):函数是一种特殊的对象类型,用于封装可重复使用的代码块。
数据类型数值强制类型转换方法备注注意事项
String
Number整数 、 浮点数
Booleantrue  false
undefinedundefined在使用 var 声明变量 单位赋值(未初始化时) 变量的值就是undefined
nullnull类似于只有一个固定值为"null"的对象

2.1强制转换类型

1.转换为String类型

// a = a.toString(); 第一种方式
// a = String(a); 第二种方式
// a = a+''; 第三种方式

2.转换为Number类型

 //Number() 可以转换任意的类型的数字
//parseInt()(int类型) parseFloat()(Float类型) 只能转换字符串为数值

注意:浮点数---》整数会导致精度丢失。

//true  转换为 1
//false   转换为 0
//null  转换为 0
//undefined >> NAN(非法数字)

3.转换为 Boolean

只能通过 Boolean()函数

 除了 0,NaN 和空串其他都是true

4.转义符

    /*
    转义符
        \n 换行  \\ 斜杠  \t 制表
        \r 回车 \b 空格 \'  \"
     */

 document.write("&emsp;");  空格,document.write("* &emsp;");   *号,document.write("<br/>"); 换行
 

2.2运算符

算术运算符(+ - * / % ++  --)

在大多数编程语言中,++ 运算符有两种形式:前置和后置。

  1. 前置自增运算符(++x):它将 x 的值增加 1,然后返回增加后的值。例如,如果 x 的初始值为 5,那么 ++x 的结果为 6。
  2. 后置自增运算符(x++):它首先返回 x 的当前值,然后将 x 的值增加 1。例如,如果 x 的初始值为 5,那么 x++ 的结果为 5,而 x 的值在运算后变为 6。

关系运算符 >  <  >=  <=

 赋值运算符 =   +=  -+  *=  /=  %=

逻辑运算符 &&  ||  !

 比较运算符 == !=  ===  !===

 条件运算符  boolean ?true:false;

逗号运算符 var num1=1,num2=2,num3=3;

 //代码块 将多条代码语句 视为一条语句使用
    {
        var a = 123;
        a++;
        alert(a);
    }
    //末尾不加;分号

2.3分支结构

条件语句
     * 通过表达式(boolean)
     * 来决定执行还是跳过某些语句

if  else if    else switch case

利用switchcase 写一个小案例(根据月 的数值 输出对应的天数)

var month = 10;switch (month) {case 1:case 3:case 5:case 7:case 8:case 10:case 12:console.log("31天")break;case 4:case 4:case 9:case 11:console.log("30天")break;case 2:console.log("28天")break;default:console.log("输入错误")break;}

循环结构

while  do...while()  for

案例,1.打印菱形

for (let i = 1; i <= 10; i++) {for (let j = 1; j <= 10 - i; j++) {document.write("&emsp;");}for (let j = 1; j <= i; j++) {document.write("* &emsp;");}document.write("<br/>")}for (let i = 9; i >= 1; i--) {for (let j = 1; j <= 10 - i; j++) {document.write("&emsp;");}for (let j = 1; j <= i; j++) {document.write("* &emsp;");}document.write("<br/>")}document.write("<hr/>");

乘法口诀表

for (let i = 1; i <= 9; i++) {for (let j = 1; j <= i; j++) {document.write(j + "*" + i + "=" + (i * j) + "&nbsp;");}document.write("<br/>");}

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

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

相关文章

JVM-7-经典垃圾收集器

Serial收集器 这个收集器是一个单线程工作的收集器&#xff0c;但它的“单线程”的意义并不仅仅是说明它只会使用一个处理器或一条收集线程去完成垃圾收集工作&#xff0c;更重要的是强调在它进行垃圾收集时&#xff0c;必须暂停其他所有工作线程&#xff0c;直到它收集结束。…

普冉(PUYA)单片机开发笔记 [完结篇]:使用体会

失败的移植&#xff1a;FreeRTOS 当使用了 PY32F003 的各种接口和功能后&#xff0c;手痒痒想把 FreeRTOS 也搬到这个 MCU 上&#xff0c;参考 STM32 和 GD32 对 FreeRTOS 的移植步骤&#xff0c;把 FreeRTOS v202212.00 版本的源码搬到了 Keil 工程中&#xff0c;编译倒是通过…

sql服务无法启动 请键入net helpmsg 3534

然后 如果是管理员权限打开命令行输入操作的话 先清空 MySQL 下的 data 文件夹&#xff0c;然后确保系统环境变量中已经配置了 mysql 的 bin 目录到Path中&#xff0c;然后执行 sc delete mysql 得到 [SC] DeleteService 成功 后&#xff08;也可能不会有返回信息&#xff…

Oracle 中ROW_NUMBER() OVER()函数用法详解

select * from ( select t.data maxdata, datatime,s.xlmc,ROW_NUMBER() OVER (PARTITION BY s.xlmc ORDER BY datatime) AS rn from HISTORY_FH_ONEDAY t, CURRENT_FH_XL s where t.code s.code ) c where c.rn1

VSCode 常用的快捷键和技巧系列(2)

一、如何让VSCode工程树显示图标 第一步&#xff1a;安装 快捷键 CtrlP &#xff0c;输入 ext install vscode-icons &#xff0c;然后点击安装插件 第二步&#xff1a;配置 安装成功后&#xff0c;点击Reload重新加载。 然后配置&#xff0c;当前图标使用VsCode-Icons Go…

2023-12-18 AndroidR RK356X 新增一个分区,这个分区可写入读取,恢复出厂后数据也不会被删除。

一、整个过程需要修改的内容,不多解释,直接看源码吧 read the fuck code。 diff --git a/bootable/recovery/install/include/install/wipe_data.h b/bootable/recovery/install/include/install/wipe_data.h old mode 100644 new mode 100755 index c177f59274..6e1987d990…

nginx学习--2023-12-18

一 proxy_pass的作用 格式很简单&#xff1a; proxy_pass URL; proxy_pass http://www.xxx.com/; proxy_pass http://192.168.200.101:8080/uri; proxy_pass unix:/tmp/www.sock; 二 proxy_pass的注意案例 案例描述&#xff1a; 假设 nginx服务器的域名为&#xff1a;www.xxx…

喜报|亚数荣获“2023物联网场景应用品牌企业”奖项

12月5日至6日&#xff0c;以“物联中国 数智雄安”为主题的“千企雄安行&#xff1a;2023物联网产业品牌大会”在雄安新区举办。 大会由雄安新区管理委员会、中关村发展集团股份有限公司、物联中国团体组织联席会主办&#xff0c;雄安新区投资促进服务中心、北京物联网智能技术…

2023.12.16力扣每日一题

2023.12.16 题目来源我的题解方法一 线段树&#xff08;借鉴官方题解评论区 知白守黑&#xff09; 题目来源 力扣每日一题&#xff1b;题序&#xff1a;2276 我的题解 方法一 线段树&#xff08;借鉴官方题解评论区 知白守黑&#xff09; 用一棵平衡二叉搜索树维护插入的区间…

开发语言:ArkTS

简介 ArkTS是华为为鸿蒙操作系统&#xff08;HarmonyOS&#xff09;开发的一种应用开发语言。这种语言在TypeScript&#xff08;简称TS&#xff09;的基础上进行了扩展&#xff0c;以更好地适应鸿蒙系统的特点和开发需求。ArkTS不仅继承了TS的所有特性&#xff0c;而且还对TS的…

Elasticsearch之ik中文分词篇

Elasticsearch之ik中文分词篇 ik分词器插件ik分词器安装ik分词模式es ik分词测试 ik分词器插件 es在7.3版本已经支持中文分词&#xff0c;由于中文分词只能支持到单个字进行分词&#xff0c;不够灵活与适配我们平常使用习惯&#xff0c;所以有很多对应中文分词出现&#xff0c…

【LeetCode刷题】-- 229.多数元素II

229.多数元素II 方法&#xff1a;使用哈希表 class Solution {public List<Integer> majorityElement(int[] nums) {HashMap<Integer,Integer> map new HashMap<>();for(int i 0;i< nums.length;i){map.put(nums[i],map.getOrDefault(nums[i],0) 1);}…

拾[10],局部可变形匹配,函数CreateLocalDeformableModel/FindLocalDeformableModel

函数CreateLocalDeformableModel 函数功能 创建局部的可变形匹配模板 C模式 LIntExport void CreateLocalDeformableModel( const HObject& Template, const HTuple& NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, const HTuple&a…

【K8S基础】-k8s的核心概念pod

一、Pod 是什么 1.1 Pod 的定义和概念 在Kubernetes中&#xff0c;Pod是创建或部署的最小/最简单的基本单位。一个Pod代表着集群上正在运行的一个进程&#xff0c;它封装了一个或多个应用容器&#xff0c;并且提供了一些共享资源&#xff0c;如网络和存储&#xff0c;每个Pod…

c语言:判断闰年|练习题

一、题目 输入一个年份&#xff0c;判断该年份是否闰年 二、解题思路 闰年的判断方法 【】普通闰年&#xff1a; 公历年份是4的倍数&#xff0c;且不是100的倍数 【】世纪闰年&#xff1a; 公历年份是整百数的年份&#xff0c;需是400的倍数 三、代码图片【带注释】 四、源代码…

Rabbitmq 死信取消超时订单

本文使用的版本 otp_win64_25.0rabbitmq-server-3.11.26rabbitmq插件 rabbitmq_delayed_message_exchange-3.11.1 pom.xml文件 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId> …

Quartz如何获取当前执行的Trigger如何注册多个Trigger到Job中,如何自定义的 Trigger 类

如何获取当前执行的Trigger import org.quartz.*; import org.quartz.impl.StdSchedulerFactory;public class TriggerNameExample {public static void main(String[] args) throws SchedulerException {// 创建调度器Scheduler scheduler StdSchedulerFactory.getDefaultSc…

数组去重及去除指定值,每一个对象添加属性值

1、数组去重ES6写法 Set() // 数组去重 let arr [1,2,4,6,3,2,6,7,7,2,9,0,1,5] arr [...new Set(arr)] console.log(arr); 2、数组去除指定值 filter() // 数组去除指定值 let arr [1,2,4,6,3,2,6,7,7,2,9,0,1,5] const num 7 arr arr.filter(item>item!num) cons…

详解YOLOv5网络结构/数据集获取/环境搭建/训练/推理/验证/导出/部署

一、本文介绍 本文给大家带来的教程是利用YOLOv5训练自己的数据集&#xff0c;以及有关YOLOv5的网络结构讲解/数据集获取/环境搭建/训练/推理/验证/导出/部署相关的教程&#xff0c;同时通过示例的方式让大家来了解具体的操作流程&#xff0c;过程中还分享给大家一些好用的资源…

如何保证线程A,B,C顺序执行,或者C在A、B后执行?

第一种方案&#xff1a;使用CountDownLatch工具类 CountDownLatch&#xff1a;是Java多线程编程中的一个同步工具类&#xff08;计数锁&#xff09;&#xff0c;它允许一个或多个线程等待其他线程完成操作后再继续执行。其内部维护了一个计数器&#xff0c;当线程在执行任务完…