前端基础篇-深入了解 JavaScript(一)

news2024/12/26 21:44:25

🔥博客主页: 【小扳_-CSDN博客】
❤感谢大家点赞👍收藏⭐评论✍
    

 

文章目录

        1.0 JavaScript 概述

        2.0 JS - 引入方式

        3.0 JS - 基础语法

        4.0 JS - 数据类型

        5.0 JS - 函数

        6.0 JS - Array 数组

        7.0 JS - String 字符串


        1.0 JavaScript 概述

        JavaScript(简称:JS)是一门夸平台、面向对象的脚本语言。使用来控制网页行为,它能够使网页可交互。JavaScript 与 Java 是完全不同的语言,不论是概念还是设计。

        脚本语言是不用进行编译处理的,直接交给浏览器解析即可,而 Java 等编程语言则是需要通过编译器编译成二进制文件再进一步编译成机器码。

        2.0 JS - 引入方式

内部脚本引入:

        1)将 JS 代码定义在 HTML 页面中。 JS 代码必须位于 <script></script> 标签之间。

        2)在 HTML 文档中,可以在任意地方,放置任意数量的 <script> 。

        3)一般会把脚本置于 <body> 元素的底部,可改善显示速度。

代码如下:

<!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>
        alert('Hello JavaScript');
    </script>
</body>
</html>

外部脚本引入:

        1)将 JS 代码定义在外部 JS 文件中,然后引入到 HTML 页面中。

        2)外部 JS 文件中,只包含 JS 代码,不包含 <script> 标签。

        3)引入将标签中属性 src 赋值为外部 JS 文件路径。

        4)<script> 不能自闭合。

代码如下:

<!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 src="JS/demo.js"></script>;
</body>
</html>

外部文件:

        3.0 JS - 基础语法

        1)区分大小写:与 Java 一样,变量名、函数名以及其他一切东西都是区分大小写的。

        2)每行结尾的分号可有可无。

        3)注释:单行注释:// 注释内容

                        多行注释:/*注释内容*/

        4)大括号表示代码块。

        5)输出语句

        有三种方式:警告框、HTML 页面中、浏览器控制台

代码如下:

<!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>
        // 警告框输出:
        window.alert('Hello JS');

        // 页面中输出
        document.write('Hello JS');

        //写入浏览器控制台
        console.log('Hello JS');

    </script>
</body>
</html>

警告框:

页面中:

浏览器控制台:

        6)变量

        JavaScript 中用 var 关键字(variable 的缩写)来声明变量。JavaScript 是一门弱类型语言,变量可以存放不同类型的值。

        变量名需要遵顼如下规则:

        组成字符可以是任何字母、数字、下划线(_)或美元符号($)。数字不能开头,建议使用驼峰命名。

        var 特点:

                属于全局变量。可以重复定义,后一个会覆盖前一个变量的值。

        let 特点:

                let 也定义变量的一个关键字,但是用该关键字定义的变量是属于局部变量,一旦离开了作用域之后,访问不到该变量。并且在同一个区域内不能重复定义相同名字的变量名。

        const 特点:

                定义一个常量的关键字,用来声明一个只读的常量,一旦声明,常量的值就不能改变。

代码如下:

<!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 id = 1;
        id = '张三';
        alert(id);
    </script>
</body>
</html>

运行结果为:

        4.0 JS - 数据类型

        JavaScript 中分为:原始数据类型和引用类型。

        原始数据类型:

        1)number:数字(整数、小数、NaN(Not a Number))

        2)string:字符串,单双引号都可以。

        3)boolean:布尔。true,false

        4)null:对象为空。

        5)undefined:当声明的变量未初始化时,该变量的默认子是 undefined

        用 typeof() 可以获取数据类型。

运算符:

        运算符还是很简单的,这里就不过多赘述了。但是注意的是 === 与 == 的区别,如图:

类型转换:

        1)字符串转数字:

                将字符串字面的值转为数字,如果字面值不是数字,则转为 NaN 。

        2)其他类型转为布尔类型:

                Number:0 和 NaN 为 false,其他转为 true 。

                String:空字符串为 false ,其他都转为 true 。

                Null 和 undefined :都转为 false 。

        5.0 JS - 函数

        函数(方法)是被设计为执行特定任务的代码块。

        JavaScript 函数通过 function 关键字进行定义,语法为:

<!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>
        function functionName(参数1,参数2){
            // 要执行的代码
            alert('调用该函数');
        }
        functionName();
    </script>
</body>
</html>

        注意:

                形式参数不需要类型。因为 JavaScript 是弱类型语言。返回值也不需要定义类型,可以在函数内部直接使用 return 即可。

        调用:

                函数名称(实际参数列表),参数列表可以是多个。

        函数的第二种定义方式:

        

        var functionName1 = function(参数1,参数2...){
            // 要执行的代码
        } 

        调用方式还是一样的,函数名称(参数列表)。

        6.0 JS - Array 数组

        JavaScript 中 Array 对象用于定义数组。

定义方式如下:

// 方式一:
var 变量名 = new Array(元素列表);

//方式二:
var 变量名 = [元素列表];

访问:

arr[索引] = 值;

        数组的特点:长度是可变的,类型也是可变的。

Array 属性:

        length:设置或返回数组中元素的数量。

Array 方法:

        forEach():遍历数组中每个有值的元素,并调用一次传入的函数。

        push():将新元素添加到数组的末尾,并返回新的长度。

        splice():从数组中删除元素。有两个参数,第一个参数是起始位置,第二个位置是删多少个数。

需要注意的是:普通的 for 循环会遍历数组中全部,而 forEach() 遍历数组中每个有值的元素。

        7.0 JS - String 字符串

        String 字符串对象创建方式有两种:

// 方式一:
var 变量名 = new String(".....");

// 方式二:
var 变量名 = "";
var 变量名 = '';

String 属性:

        length:字符串的长度。

String 方法:

        charAt():返回在指定位置的字符。

        indexOf():检索字符串,返回下标。

        trim():去除字符串两边的空格。

        substring():提取字符串中两个指定的索引之间的字符,包前不包后。

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

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

相关文章

Java推荐算法——特征加权推荐算法(以申请学校为例)

加权推荐算法 文章目录 加权推荐算法1.推荐算法的简单介绍2.加权推荐算法详细介绍3.代码实现4.总结 1.推荐算法的简单介绍 众所周知&#xff0c;推荐算法有很多种&#xff0c;例如&#xff1a; 1.加权推荐&#xff1a;分为简单的特征加权&#xff0c;以及复杂的混合加权。主要…

Qt文件读写

做一个简单的文件读写&#xff0c;我们把一个结构体内的数据写入到二进制文件中&#xff0c;并重新读取解析。代码结构如下&#xff1a; 项目名称随便起就好了。main.cpp是主函数&#xff1b;DataHandler实现文件的写与读&#xff0c;还要模拟过程&#xff1b;Definition.h放置…

蚁群算法实现 - 全局路径规划算法

参考博客&#xff1a; &#xff08;1&#xff09;【人工智能】蚁群算法(密恐勿入) &#xff08;2&#xff09;计算智能——蚁群算法 &#xff08;3&#xff09;蚁群算法(实例帮助理解) &#xff08;4&#xff09;【数之道 04】解决最优路径问题的妙招-蚁群ACO算法 &#xff08;…

51单片机—DS18B20温度传感器

目录 一.元件介绍及原理 二&#xff0c;应用&#xff1a;DS18B20读取温度 一.元件介绍及原理 1.元件 2.内部介绍 本次元件使用的是单总线 以下为单总线的介绍 时序结构 操作流程 本次需要使用的是SKIP ROM 跳过&#xff0c; CONVERT T温度变化&#xff0c;READ SCRATCHPAD…

IP对讲终端SV-6002 可以选配POE供电方式

18123651365微信 IP对讲终端SV-6002是一款采用了ARMDSP架构&#xff0c;接收网络音频流&#xff0c;实时解码播放&#xff1b;配置了麦克风输入和扬声器输出&#xff0c;作为网络数字广播的播放终端。主要用于银行、部门机构、酒店等场所的网络广播、网络对讲。 I…

华为PixArt-α:高质量、低成本的文生图模型,训练时长只有SD 1.5的10.8%

2024年3月11日由华为诺亚方舟实验室、大连理工大学和香港大学的研究团队共同开发的PixArt-Σ是一款能够直接生成4K分辨率图像的扩散变换模&#xff08;DiT&#xff09;。PixArt-Σ相比其前作PixArt-α&#xff0c;在图像质量和文本提示对齐方面有了显著提升&#xff0c;展示了从…

Mybatis-xml映射文件与动态SQL

xml映射文件 动态SQL <where><if test"name!null">name like concat(%,#{name},%)</if><if test"username!null">and username#{username}</if></where> <!-- collection&#xff1a;遍历的集合--> <!-- …

CoAP计算机协议,应用于物联网

什么是CoAP协议&#xff1f; CoAP&#xff08;Constrained Application Protocol&#xff0c;受限应用协议&#xff09;是一种专为物联网&#xff08;IoT&#xff09;设备和资源受限网络设计的应用层协议。它的诞生也是由于物联网设备大多都是资源限制型的&#xff0c;比如 CP…

HTML详细教程

文章目录 前言一、快速开发网站最简模板二、HTML标签1.编码2.title3.标题4.div和span5.超链接6.图片7.列表8.表格9.input系列10.下拉框11.多行文本 三、GET方式和POST方式1.GET请求2.POST请求 前言 HTML的全称为超文本标记语言&#xff0c;是一种标记语言&#xff0c;是网站开发…

Spring Boot(六十九):利用Alibaba Druid对数据库密码进行加密

1 Alibaba Druid简介 之前介绍过Alibaba Druid的,章节如下,这里就不介绍了: Spring Boot(六十六):集成Alibaba Druid 连接池 这章使用Alibaba Druid进行数据库密码加密,在上面的代码上进行修改,这章只介绍密码加密的步骤。 目前越来越严的安全等级要求,我们在做产品…

RuoYi-Vue开源项目2-前端登录验证码生成过程分析

前端登录验证码实现过程 生成过程分析 生成过程分析 验证码的生成过程简单概括为&#xff1a;前端登录页面加载时&#xff0c;向后端发送一个请求&#xff0c;返回验证码图片给前端页面展示 前端页面加载触发代码&#xff1a; import { getCodeImg } from "/api/login&q…

JavaWeb请求响应

目录 一请求响应 1.1请求响应概述&#xff1a; 1.2网页接口与发送 1.2.1简单参数传输 1.2.2实体参数 1.2.3数组集合参数 ​编辑1.2.4集合参数 1.2.5日期时间的参数 1.2.6Json参数 1.2.7路径参数 小结 1.3响应请求 二请求响应小demo 源码链接&#xff1a; 一请求响…

愈宠引领宠物大健康生态新时代——打造临床医养与新膳食营养的完美融合

愈宠(VetCurePet)创立于2023年&#xff0c;隶属于中创集宠(深圳)科技有限公司&#xff0c;是一家集研发、生产、销售为一体的综合型现代化企业。愈宠致力于打造宠物大健康生态系统&#xff0c;以临床医养新膳食营养自効愈宠健康&#xff0c;旗下产品涵盖宠物膳食食品烘焙处方粮…

蓝桥杯嵌入式2021年第十二届第二场省赛主观题解析

1 题目 2 解析 /* Includes ------------------------------------------------------------------*/ #include "main.h" #include "adc.h" #include "tim.h" #include "gpio.h"/* Private includes ----------------------------…

sql join

-- 创建事实表 CREATE TABLE product_facts (id INT AUTO_INCREMENT PRIMARY KEY,product_name VARCHAR(255),price DECIMAL(10, 2) );-- 插入数据 INSERT INTO product_facts (product_name, price) VALUES (Product A, 100.00); INSERT INTO product_facts (product_name, pr…

【GPT-SOVITS-03】SOVITS 模块-生成模型解析

说明&#xff1a;该系列文章从本人知乎账号迁入&#xff0c;主要原因是知乎图片附件过于模糊。 知乎专栏地址&#xff1a; 语音生成专栏 系列文章地址&#xff1a; 【GPT-SOVITS-01】源码梳理 【GPT-SOVITS-02】GPT模块解析 【GPT-SOVITS-03】SOVITS 模块-生成模型解析 【G…

分布式搜索引擎(3)

1.数据聚合 **[聚合&#xff08;](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations.html)[aggregations](https://www.elastic.co/guide/en/elasticsearch/reference/current/search-aggregations.html)[&#xff09;](https://www.ela…

旅游系统-软件与环境

一. 软件 1.Navicat、phpstudy、Idea、Vsode 参考 网盘链接 二.配置文件 1.NodeJS、JDK、Mysql 参考 网盘链接 注意点&#xff1a; 1.Mysql 切记需要环境变量配置 2.数据库密码要好记点的&#xff0c;别乱设 3.环境变量配置的路径要能找到 三.安装运行 1.下载网盘内的软件&am…

html系列:按钮被样式图片挡着了,无法点击怎么办

​ 背景 在开发中会遇到一些奇奇怪怪的需求&#xff0c;比如在按钮上要显示一个样式图片&#xff0c;同时还要能不影响按钮的点击使用&#xff1b;这时候&#xff0c;设置好了样式&#xff0c;按钮无法点击怎么办&#xff1f; 在查阅资料的时候找到了解决方案。 解决方案 …

kafka集群介绍

介绍 kafka是一个高性能、低延迟、分布式的消息传递系统&#xff0c;特点在于实时处理数据。集群由多个成员节点broker组成&#xff0c;每个节点都可以独立处理消息传递和存储任务。 路由策略 发布消息由key、value组成&#xff0c;真正的消息是value&#xff0c;key是标识路…