javaScrip的学习(一)

news2024/9/21 12:33:16

目录

引言

一、java和JavaScript的联系

二、js中的弹出框

1.alert弹出框

2.confirm带确认取消的按钮弹框

3.prompt带有提示信息且带有输入框的弹框 

4.输出到网页中

​三、js引入方式

1. 放在script标签中

2.放在外部js文件中

四、执行顺序

五、书写规范

1. 语句结尾加 分号

2. 空格不影响(会忽略多余的空格)

六、变量声明

1.注释

2.变量声明

3.变量的命名规则

七、数据类型

1.基本数据类型

2. 引用数据类型

八、数据类型检测

1.typeof()进行检测

九、结束语


引言

这篇文章让我们简单来了解一下js,那么什么是js?

JavaScript(简称JS)是一种高级编程语言,主要用于为网页添加交互功能。它可以嵌入到HTML页面中,通过对DOM(文档对象模型)的操作来实现动态效果和用户交互。

JavaScript由Netscape公司的Brendan Eich于1995年创造,最初是为了增强HTML页面的功能性。随着时间的推移,JavaScript逐渐演变成一种通用的编程语言,可以在浏览器以外的环境中运行,例如服务器端的Node.js。

JavaScript具有一些特点,例如动态类型、解释执行、弱类型、面向对象和事件驱动。它支持各种编程范式,包括面向对象编程、函数式编程和命令式编程。

JS拥有强大的功能和广泛的应用领域。它可以用于创建交互式的网页、开发前端框架、构建移动应用程序、编写服务器端代码等。由于其易学易用的特点,JavaScript成为了最受欢迎的编程语言之一,被广泛应用于Web开发领域。

接下来让我们进入js的学习,感受编程的乐趣~

一、java和JavaScript的联系

JavaScript是一种动态编程语言,用于在网页上添加交互功能。它是一种具有面向对象、函数式和基于原型的特性的脚本语言。JavaScript通常用于前端开发,可以通过对DOM(文档对象模型)的操作来实现网页的动态效果。

而Java是一种面向对象的编程语言,具有强类型和静态类型的特点。Java可以用于多种应用开发,包括网页开发,但通常需要使用Java Applet或Java Servlet来实现与HTML的交互。

JavaScript和Java之间存在以下联系与区别:

  • 名称相似:JavaScript的名称中包含"java",这是因为当它在1995年首次发布时,Java语言的流行度很高。然而,JavaScript和Java是两种不同的编程语言,它们的语法和用途也不同。
  • 应用领域:JavaScript主要用于前端开发,可以实现网页的交互功能和动态效果。而Java可以用于服务器端开发、桌面应用程序和移动应用程序等多个领域。
  • 语法:尽管JavaScript的语法在某些方面受到Java的影响,但它们拥有不同的语法结构和规则。JavaScript是一种动态类型语言,不需要声明变量的类型;而Java是一种静态类型语言,需要在声明变量时指定其类型。
  • 运行环境:JavaScript是一种脚本语言,可以在浏览器中运行。浏览器提供了JavaScript解释器,并通过对DOM的操作来实现网页的交互效果。而Java需要在JVM(Java虚拟机)上运行,或者通过其他方式编译成可执行文件。

总而言之,JavaScript和Java虽然名称相似,但它们是两种不同的编程语言,用途和语法也有所不同。JavaScript主要用于前端开发,而Java可以用于多种应用领域。

二、js中的弹出框

1.alert弹出框

alert弹出框:alert弹出框是一种常见的浏览器弹窗,用于向用户显示一条简单的消息。它包含一个消息文本和一个确定按钮,当用户点击确定按钮时,弹窗会关闭。

<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 弹出框
        alert("昨夜雨疏风骤,浓睡不消残酒。试问卷帘人,却道海棠依旧,知否知否,应是绿肥红瘦。");

       
    </script>
</body>

</html>

运行结果(点击确定以后弹出框消失)

2.confirm带确认取消的按钮弹框

confirm:confirm弹框通常会包含一个确认按钮和一个取消按钮,用于用户确认或取消某个操作。用户可以点击确认按钮来执行操作,或者点击取消按钮来取消操作。

<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
       
        //带确认取消的按钮弹框
        var a = confirm("你确定要删除吗?");
        //输出到控制台
        console.log("a:", a);
    </script>
</body>

</html>

运行结果

3.prompt带有提示信息且带有输入框的弹框 

prompt:prompt是一个内置函数,用于显示一个对话框,提示用户输入信息

<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // 带有提示信息且带有输入框的弹框
        var b = prompt("请输入你的名字:", "小明");
        console.log("b:", b);
    </script>
</body>

</html>

运行结果

4.输出到网页中

document.write()

<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
       
        // 输出到网页中
        document.write("<h1>好烦!!!!</h1>");
    </script>
</body>

</html>

运行结果

三、js引入方式

在HTML中,可以通过两种方式引入JavaScript文件。

1. 放在script标签中

内部引入:将JavaScript代码写在<script>标签中,放置在HTML文件的<head>或<body>中。

2.放在外部js文件中

外部引入:通过<script>标签中的src属性引入外部的JavaScript文件。

<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <!-- 1.放在script标签中 -->
    <!-- <script type="text/javascript">
        console.log("太热了!!!!!啊啊啊啊啊啊!!!!")
    </script> -->


    <!-- 2.放在外部js文件中 -->
    <script src="./js/index.js">
        // 注意 此处不能再写js代码,不会被执行
        // console.log("太热了!!")
    </script>
</head>

<body>

</body>

</html>

四、执行顺序

在JavaScript中,阻塞加载是指在浏览器加载脚本文件时,会阻塞页面的渲染和其他脚本的执行,直到当前脚本文件加载完成并执行完毕后,才会继续加载和执行其他的脚本文件或者进行页面渲染。

原因是,当浏览器遇到 script 标签时,会立即停止解析 HTML 并开始下载和执行脚本文件。如果脚本文件体积较大或者网络延迟较高,那么页面的加载和渲染将会被延迟。

阻塞加载可能会影响页面的性能和用户体验。为了解决这个问题,可以考虑使用异步加载、延迟加载或按需加载等技术来优化脚本加载。

五、书写规范

1. 语句结尾加 分号

2. 空格不影响(会忽略多余的空格)

如下代码可以正常执行

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    // 1. 语句结尾加 分号
    // 2. 空格不影响(会忽略多余的空格)
    var person = "张奇";
    var p =     "张奇2";
    console.log("person:", person);
    console.log("p:", p);
  </script>
</body>
</html>

六、变量声明

1.注释

单行注释  Ctrl + /

多行注释   ctrl + shift + /

2.变量声明

var  ===> 声明  关键字

a    ===> 标识符  变量

=    ===> 赋值

10   ===> 储存的值

如下:

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
      
        var a = 10;   // 将 10 赋值给 变量a
        console.log("a:", a);
        var b = 20;
        var c = a + b;
        console.log("c:", c); 

        var a = 10, b = 20, c;
        console.log("a:", a);  // 10
        console.log("b:", b);   // 20
        console.log("c:", c);   // undefined   变量声明了 但是未赋值

    </script>
</body>

</html>

3.变量的命名规则

  • 不能以数字开头
  •  不能是JavaScript中的保留关键字  例如: name class document等
  • 遵循驼峰命名法  newNameClass
  • js命名是区分大小写的  所以在命名变量、函数时要多加注意。

七、数据类型

1.基本数据类型

  • 1.string 字符型
  • 2.number 数字型
  • 3.Boolean 布尔型
  •  4.undefined 未定义
  • 5.null 空

2. 引用数据类型

  • 1.array 数组
  • 2.object 对象
  •  3.function 函数

八、数据类型检测

1.typeof()进行检测

具体如下代码块解释

<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        //数据类型检测 typeof

        //基本数据类型
        // 1.string 字符串
        // var str = "123456789"
        // console.log("str:", str, typeof str);

        //2.number 数字
        // var num = 1233456789;
        // console.log("num:", num, typeof num);

        // 3.boolean 布尔值
        // var f = true;
        // console.log("f:", f, typeof f);


        //4.undefined 未定义
        // var a = undefined;
        // console.log("a:", a, typeof a);

        // 5.null 空值
        // var b = null;
        // console.log("b:", b, typeof b);//object



        //引用数据类型
        //1.Array 数组
        var arr = [];
        console.log("arr:", arr, "======", typeof arr);//object

        //2.function 函数
        var fn = function () { };
        console.log("fn:", fn, "======", typeof fn);//function

        //3.object 对象
        var obj = {}
        console.log("obj:", obj, "======", typeof obj);//object
    </script>
</body>

</html>

九、结束语

那么第一节的js就到此结束了,小伙伴们可以继续关注下一节内容,我们继续来学习。

see you ~

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

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

相关文章

专业技能(挖坑填坑)——Java核心基础知识,对集合、线程

熟悉Java核心基础知识&#xff0c;对集合、线程等都有了解&#xff0c;能运用模块化、面向对象的方式编程。 1.Java八种基本数据类型 Java的数据类型分为两大类&#xff1a;①基本数据类型 ②引用数据类型 2.面向对象三大特性 封装、继承、多态。 简要介绍一下/谈一下你的…

为什么 FPGA 的效率低于 ASIC?

FPGA是“可重构逻辑”器件。先制造的芯片&#xff0c;再次设计时“重新配置”。 ASIC 不需要“重新配置”。你先设计&#xff0c;把它交给代工厂&#xff0c;然后制造芯片。 现在让我们看看这些芯片的结构是什么样的&#xff0c;以及它们的不同之处。 ● 逻辑单元&#xff1a;F…

(leetcode学习)21. 合并两个有序链表

将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4]示例 2&#xff1a; 输入&#xff1a;l1 [], l2 [] 输出&#xff1a;[]示例…

Ethernet/IP转ModbusTCP协议转化网关(经典通讯案例)

怎么样把EtherNet/IP和ModbusTCP网络通讯连接起来呢?最近有很多朋友咨询这个问题&#xff0c;在这里统一为大家详细说明一下。其实有一个设备可以很轻松地解决这个问题&#xff0c;名为YC-EIP-TCP&#xff0c;下面是详细信息。 一&#xff0c;设备主要功能 1YC-EIP-TCP工业级…

数据结构(5.3_1)——二叉树的先中后序遍历

先序遍历——根左右——前缀表达式 中序遍历——左根右——中缀表达式 后序遍历——左右根——后缀表达式 二叉树的遍历(手算) 先序遍历代码 struct ElemType {int value; }; //二叉树的结点(链式存储) typedef struct BiTNode {ElemType data;//数据域struct BiTNode *lchil…

数据采集产品 搭建智能水房实现远程控制的案例分享

一、系统简介 随着科技的逐步发达&#xff0c;在各个领域都迫切的希望有一种控制系统能代替传统的操作方式&#xff0c;智能水房控制系统则是一种符合人们要求的系统&#xff0c;他可代替传统的人工机械操控&#xff0c;真正实现控制智能化。通过水房的各种数据采集可以实现24小…

学习记录——day15 数据结构 链表

链表的引入 顺序表的优缺点 1、优点:能够直接通过下标进行定位元素&#xff0c;访问效率高&#xff0c;对元素进行查找和修改比较快 2、不足:插入和删除元素需要移动大量的元素&#xff0c;效率较低 3、缺点:存储数据元素有上限&#xff0c;当达到MAX后&#xff0c;就不能再…

VScode tab不能正常使用

现象不能够在文本编辑器中按下tab键&#xff0c;如果按下了&#xff0c;就焦点会跑到终端或者是其他地方&#xff0c;猜测是因为装了某些插件导致的。 解决方案比较简单&#xff1a; 删除掉其他的按键 比如这样的&#xff0c;保存就可以了

mysql1055报错解决方法

目录 一、mysql版本 二、 问题描述 三、解决方法 1.方法一&#xff08;临时&#xff09; 2.方法二&#xff08;永久&#xff09; 一、mysql版本 mysql版本&#xff1a;5.7.23 二、 问题描述 在查询时使用group by语句&#xff0c;出现错误代码&#xff1a;1055&#xf…

Facebook的创新之路:科技驱动的社交革命

Facebook自2004年创立以来&#xff0c;已经从一个大学校园内的社交网站发展成为全球最大的社交媒体平台。其成功的背后&#xff0c;不仅仅是广泛的用户基础和高效的运营模式&#xff0c;更在于其不断推进的技术创新。本文将探讨Facebook在技术创新方面的诸多努力&#xff0c;如…

MYSQL 六、mysql锁 1

一、概述 在数据库中&#xff0c;除传统的计算资源&#xff08;如CPU、RAM、I/O等&#xff09;的争用以外&#xff0c;数据也是一种供许多用户共享的 资源。为保证数据的一致性&#xff0c;需要对 并发操作进行控制 &#xff0c;因此产生了 锁 。同时 锁机制 也为实现MySQL 的各…

GitHub Actions是什么

目录 GitHub Actions是什么 GitHub Actions的使用方法 示例 注意事项 GitHub Actions配置文件中-工作流的 :Workflow 一、自动化任务执行 二、规范团队协作 三、灵活配置和定制 四、提高开发效率 五、集成GitHub生态 六、可复用性和共享性 仓库中的“Actions”部分…

新生上大学提前去西藏旅游有什么要注意的,语言上该怎么办?

新生前往西藏旅游并提前适应大学生活是一次充满挑战与发现的旅程。在准备过程中&#xff0c;重要的是要对高原反应有所准备&#xff0c;了解其症状并采取预防措施&#xff0c;同时携带必要的防晒和保暖衣物以应对极端的气候条件。在交通和饮食方面&#xff0c;选择安全可靠的选…

奔跑利润如何释放?来看看怎么分析现货黄金的跟踪止损位

跟踪止损位是现货黄金交易和资金管理中一个重要的概念。我们做现货黄金的时候&#xff0c;将仓位分成两部分&#xff08;或以上&#xff09;。第一部分&#xff0c;我们在首个目标位获利离场&#xff0c;剩下那部分就可以让它奔跑&#xff0c;看看市场会不会走出大行情&#xf…

springboot系列十一:Thymeleaf

文章目录 官方文档基本介绍Thymeleaf机制说明Thymeleaf语法表达式运算符th属性迭代条件运算使用Thymeleaf th属性需要注意点 Thymeleaf综合案例需求说明思路分析代码实现 作业布置 官方文档 在线文档: https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html 离线…

自动导入unplugin-auto-import+unplugin-vue-components

文章介绍 接下来将会以Vite Vue3 TS的项目来举例实现 在我们进行项目开发时&#xff0c;无论是声明响应式数据使用的ref、reactive&#xff0c;或是各种生命周期&#xff0c;又或是computed、watch、watchEffect、provide-inject。这些都需要前置引入才能使用&#xff1a; …

Mem0:个性化的AI记忆层,一款开源的大语言记忆增强工具

在人工智能的浪潮中&#xff0c;个性化体验已成为创新的关键。而随着各种各样的模型迭代更新&#xff0c;如何为AI应用提供持久、智能的记忆系统逐渐成为了一个关键挑战。 最近开源的Mem0项目为我们提供了一个强大的解决方案。它为大型语言模型(LLM)提供了一个智能、自我优化的…

CTF ssrf 基础入门

0x01 引言 我发现我其实并不是很明白这个东西&#xff0c;有些微妙&#xff0c;而且记忆中也就记得Gopherus这个工具了&#xff0c;所以重新学习了一下&#xff0c;顺便记录一下吧 0x02 辨别 我们拿到一个题目&#xff0c;他的名字可能就是题目类型&#xff0c;但是也有可能…

昇思25天学习打卡营第九天|本地安装mindspore之一|Linux的系统在vmware上的安装以及mindspore的安装

课程已经学完了&#xff0c;打算再深入一些。初步的想法是&#xff0c;在本地安装&#xff0c;本地执行。 根据老师的指引&#xff0c;MindSpore官网&#xff0c;“https ://www.mindspore.cn/install/”&#xff0c;注意&#xff0c;因为csdn博客编辑器的原因&#xff0c;当我…

C#与C++交互开发系列(三):深入探讨P/Invoke基础知识

欢迎来到C#与C交互开发系列的第三篇。在这篇博客中&#xff0c;我们将深入探讨P/Invoke&#xff08;Platform Invocation Services&#xff09;的基础知识。P/Invoke是C#调用非托管代码的一种机制&#xff0c;能够让C#直接调用C编写的动态链接库&#xff08;DLL&#xff09;中的…