javaweb学习day2《JavaScript篇》--JavaScript全套基础知识点详解(附全套源代码及其案例逐语句解析)一万七千字全方位概括

一、前言

不知道大家有没有一同跟随小编坚持下去,这是javaweb学习的第二天,相信大家已经感觉到有些难度了,因为主要学习的是后端和框架,所以js和HTML只是简单的过一遍。这些基础的知识点应该总结的算是十分全面的了。相信对于学习前端的小伙伴们也是一味很好的良药。

黑马程序员的视频质量十分的高,自学能力强的小伙伴们可以去跟着黑马程序员进行全方位的学习。

如果想要跟随小编的脚步,每天都不能落后啊。

javaweb学习day1

二、基础知识点汇总

2.1 js函数

2.1.1 函数定义方式

JavaScript 中可以使用两种方式来定义函数:

函数声明

function add(a, b) {return a + b;
}

这种方式使用 function 关键字定义函数,后跟函数名和参数列表。函数声明提升到作用域顶部,可以在声明之前调用。

函数表达式

var add = function(a, b) {return a + b;
};

这种方式将一个匿名函数赋值给一个变量 add。这个变量 add 成为一个函数对象的引用。函数表达式不会提升,只有在赋值行之后才能调用。

2.2.2 函数调用

// 调用函数定义-1
var result1 = add(10, 20); // 输出 30
alert(result1);// 调用函数定义-2
var add = function(a, b) {return a + b;
};
var result2 = add(10, 10); // 输出 20
alert(result2);
  • 第一次调用使用了函数声明 function add(a, b) 定义的 add 函数,计算了 10 + 20,并将结果弹出显示在警告框中。
  • 第二次调用使用了函数表达式 var add = function(a, b) 定义的 add 函数,计算了 10 + 10,并将结果弹出显示在警告框中。

2.2 js对象-Array

2.2.1 数组的定义

JavaScript 中可以使用多种方式来定义数组,例如:

使用 new Array() 构造函数:

var arr1 = new Array(1, 2, 3, 4);

使用数组字面量(推荐方式):

var arr2 = [1, 2, 3, 4];

2.2.2 数组的基本操作

  • 访问数组元素
console.log(arr1[0]); // 输出数组 arr1 的第一个元素
console.log(arr2[1]); // 输出数组 arr2 的第二个元素
  • 动态数组长度

JavaScript 中的数组长度是可变的,可以随时增加或减少元素,且每个元素可以是不同的类型。

var arr3 = [1, 2, 3, 4];
arr3[10] = 100; // 添加新元素到数组的索引位置 10
arr3[9] = 'A';  // 添加新元素到数组的索引位置 9
arr3[8] = true; // 添加新元素到数组的索引位置 8
console.log(arr3); // 输出完整的数组,包括未赋值的部分
  • 数组的长度属性
var arr4 = [1, 2, 3, 4];
for (let i = 0; i < arr4.length; i++) {console.log(arr4[i]); // 遍历数组中的所有元素
}

2.2.3 数组的方法

  • forEach 方法
var arr5 = [1, 2, 3, 4];
arr5.forEach(function(i) {console.log(i); // 遍历数组中所有有值的元素
});
  • ES6 箭头函数

使用箭头函数可以简化 forEach 方法的定义

arr5.forEach((i) => {console.log(i);
});
  • for 循环遍历

遍历数组中的所有元素,包括未赋值的元素

for (let i = 0; i < arr5.length; i++) {console.log(arr5[i]);
}
  • push 方法

向数组末尾添加新元素:

arr5.push(5); // 在数组 arr5 的末尾添加数字 5
console.log(arr5[11]); // 输出新添加的元素
  • splice 方法

删除数组中的元素:

var arr6 = [1, 2, 3, 4, 5, 6];
arr6.splice(2, 3); // 从索引位置 2 开始,删除 3 个元素

2.3 js对象-String

2.3.1 字符串的定义

JavaScript 中可以使用字符串字面量直接定义字符串变量,也可以使用 new String() 构造函数创建字符串对象。推荐使用字符串字面量的方式,如:

var str = "Hello String";
console.log(str);

2.3.2 字符串的属性

  • length 属性:用于获取字符串的长度
console.log(str.length); // 输出字符串 str 的长度

2.3.3 字符串的方法

  • charAt() 方法:返回指定索引位置的字符。
console.log(str.charAt(4)); // 输出索引位置 4 的字符,从0开始计数
  • indexOf() 方法:检索字符串中指定的子字符串第一次出现的位置。
console.log(str.indexOf("in")); // 输出子字符串 "in" 在 str 中的位置,如果不存在返回 -1
  • trim() 方法:去除字符串两端的空格。
var str1 = "   hello world   ";
var str2 = str1.trim();
console.log(str1); // 原始字符串保持不变
console.log(str2); // 去除两端空格后的字符串
  • substring() 方法:提取字符串中两个指定的索引号之间的字符。
var str3 = "hello von";
console.log(str3.substring(6, 9)); // 输出从索引 6 到索引 9(不包含)之间的字符

2.4 js对象-JSON

2.4.1 JSON 格式定义

JSON 是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成。在 JavaScript 中,JSON 可以表示为一个对象字面量(object literal),具有属性和方法。

2.4.2 自定义对象的定义

在 JavaScript 中,可以使用对象字面量来定义自定义对象,例如:

var user = {name: "von",age: 18,gender: "dayi",sex: "男",eat: function() {alert("吃东西");}
};alert(user.name); // 访问对象的属性
user.eat(); // 调用对象的方法

这段代码定义了一个名为 user 的对象,包含了 nameagegendersex 属性以及 eat 方法。

2.4.3 JSON 字符串

JSON 可以表示为字符串形式,它是一个键值对的集合,属性名和属性值都是用双引号包裹的字符串。例如:

var jsonstr = '{"name":"von","age":18,"addr":["郑州","开封","兰考"]}';

2.4.4 JSON 字符串转换为 JavaScript 对象

使用 JSON.parse() 方法可以将 JSON 字符串解析为对应的 JavaScript 对象。

var obj = JSON.parse(jsonstr);
alert(obj.name); // 访问对象的属性

2.4.5 JavaScript 对象转换为 JSON 字符串

使用 JSON.stringify() 方法可以将 JavaScript 对象转换为 JSON 字符串。

alert(JSON.stringify(obj)); // 输出转换后的 JSON 字符串

2.5 js对象-BOM

2.5.1 window 对象

window.alert("Hello BOM"); 和 alert("Hello bom"); 都是调用 window 对象的 alert() 方法。在 JavaScript 中,全局作用域下的方法和属性可以直接使用,因为它们都属于 window 对象。

2.5.2 confirm 对话框

confirm() 方法显示一个带有确认和取消按钮的对话框,并返回用户的选择结果。如果用户点击确认,返回 true;如果用户点击取消,返回 false。

var flag = confirm("您确定关注博主吗?");
alert(flag);

2.5.3 定时器方法

  • setInterval():周期性地执行一个函数。在你的注释中展示了如何每隔两秒执行一次函数。

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

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

相关文章

Spring相关的面试题

1、spring中bean的生命周期 spring bean的生命周期主要分为三大类 &#xff0c;分别是创建-》使用-〉销毁。 在三大类下面又可以分为5个小类。分别是 实列化-〉初始化-》组册destruction回调-〉使用-〉销毁 这这其中 初始化也可以细分为 设置属性值&#xff0c;前置处理&#…

RAG的上限在哪里?边界在哪里?

随着大模型的火热&#xff0c;RAG也重出江湖&#xff0c;成为AI产品中最火热的成员之一。特别是2024年到现在&#xff0c;越来越多的RAG产品出现在gitlib 上。 世人皆知RAG&#xff0c;唯独不知RAG的能力边界。 RAG用一句话&#xff1a;入门&#xff08;demo跑通整个流程&#…

UDP协议介绍和作用

什么是UDP? UDP是User Datagram Protocol的简称&#xff0c;中文名是用户数据报协议&#xff0c;是OSI参考模型中的传输层协议&#xff0c;它是一种无连接的传输层协议&#xff0c;提供面向事务的简单不可靠信息传送服务。 UDP的正式规范是IETF RFC768。UDP在IP报文的协议号是…

手撸俄罗斯方块(四)——渲染与交互

手撸俄罗斯方块&#xff08;四&#xff09;——渲染与交互 如何渲染游戏界面 我们知道&#xff0c;当我们看到页面先呈现图像时&#xff0c;实际上看到的是一张图片&#xff0c;多张图片按照一定的刷新频率进行切换&#xff0c;则变成了动态的视频。当刷新频率超过24Hz时&…

Spring设计模式

Spring框架在设计和实现时使用了许多设计模式&#xff0c;这些设计模式帮助Spring提供了灵活、可扩展和松耦合的架构。以下是Spring中一些常见的设计模式&#xff1a; 1. 单例模式&#xff08;Singleton Pattern&#xff09;: - Spring的默认作用域是singleton&#xff0c;…

DWG文件发布至IIS后无法下载和预览解决办法

问题描述 DWG文件发布至IIS后无法下载和预览 原因分析&#xff1a; iis里面需要添加扩展 解决方案&#xff1a; 在服务器端IS属性的HTTP头下的MIME内容中添加扩展名“.dwg” MIME类型填入application/acad

「AIGC」TDSQL技术详解

创建一个完整的TDSQL实例涉及到多个步骤,包括数据库的创建、配置、连接以及基本的数据库操作。请注意,以下示例代码是模拟操作,实际使用时需要根据TDSQL的具体环境和要求进行调整。 步骤1: 创建TDSQL实例 在TDSQL的官网上,进入产品控制台,选择数据库服务器所在的地域,以…

29.PLL(锁相环)-IP核的调用

&#xff08;1&#xff09;PLL IP核的简介&#xff1a; Phase Locked Loop&#xff0c;即锁相环&#xff0c;是最常用的IP核之一&#xff0c;其性能强大&#xff0c;可以对输入到FPGA的时钟信号进行任意分频、倍频、相位调整、占空比调整&#xff0c;从而输出一个期望时钟。锁相…

JVM学习(day1)

JVM 运行时数据区 线程共享&#xff1a;方法区、堆 线程独享&#xff08;与个体“同生共死”&#xff09;&#xff1a;虚拟机栈、本地方法栈、程序计数器 程序计数器 作用&#xff1a;记录下次要执行的代码行的行号 特点&#xff1a;为一个没有OOM&#xff08;内存溢出&a…

C语言:指针详解(4)

作者本人由于大一下学期事情繁多&#xff0c;大部分时间都在备赛&#xff0c;没有时间进行博客撰写&#xff0c;如今已经到了暑假时间&#xff0c;作者将抓紧每一天的时间进行编程语言的学习&#xff0c;由于目前作者已经进行到了C的学习&#xff0c;C语言阶段的学习与初阶数据…

Tensorflow入门实战 T08-Vgg16网络进行猫狗识别

目录 1、前言 2、代码 3、运行结果 4、反思 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 | 接辅导、项目定制 1、前言 本周学习内容为&#xff0c;采用自己设置的vgg-16网络进行猫狗识别&#xff0c;并非官网提供的…

Three 平面(Plane)和 三维几何线段(Line3)

平面&#xff08;Plane&#xff09; 在三维空间中无限延伸的二维平面&#xff0c;平面方程用单位长度的法向量和常数表示为海塞法向量Hessian normal form形式。 构造器&#xff08;Constructor&#xff09; Plane( normal : Vector3, constant : Float ) normal - (可选参…

【公益案例展】亚运天穹——践行亚运理念,筑牢安全防线

‍ 安恒信息公益案例 本项目案例由安恒信息投递并参与数据猿与上海大数据联盟联合推出的 #榜样的力量# 《2024中国数据智能产业最具社会责任感企业》榜单/奖项”评选。 大数据产业创新服务媒体 ——聚焦数据 改变商业 杭州第19届亚运会是中国第三次举办亚洲最高规格的国际综合…

217.贪心算法:加油站(力扣)

代码解决 class Solution { public:int canCompleteCircuit(vector<int>& gas, vector<int>& cost) {int curtotol 0; // 当前累积油量int tatol 0; // 总的油量减去总的花费油量int start 0; // 起始加油站的索引// 遍历所有加油站for (int i 0; i &…

AJAX是什么?原生语法格式?jQuery提供分装好的AJAX有什么区别?

ajax 的全称 Asynchronous JavaScript and XML (异步 JavaScript 和 XML)。 AJAX是一种创建交互式网页应用的网页开发技术。其中最核心的依赖是浏览器提供的 XMLHttpRequest 对象&#xff0c;是这个对象使得浏览器可以发出 HTTP 请求与接收 HTTP 响应。实现了在页 面不刷新的…

try catch 解决大问题

项目开发中遇到一个棘手的bug&#xff0c;react前端项目独自运行时一切正常&#xff0c;但是把项目集成到使用wujie的大平台微前端项目中之后&#xff0c;突然有个地方无故报错&#xff0c;导致程序运行停止&#xff0c;后续的方法不再执行。报错如下&#xff1a; DOMExceptio…

5款文案生成神器,自动一键生成原创文案

文案在我们的生活中随处可见&#xff0c;好的文案内容不仅可以为企业带来销售转化&#xff0c;而且还能提升品牌的影响力&#xff0c;因此文案的重要性可想而知&#xff0c;对于文案创作者来说&#xff0c;写作好的文案不是轻松容易的事&#xff0c;但如果把这个任务交给文案生…

C++ 函数返回值是void* 使用场景

函数返回值为 void* 的使用场景主要涉及以下几个方面&#xff1a; 1、 通用指针传递 void* 是一种通用指针类型&#xff0c;可以指向任何类型的数据。在某些情况下&#xff0c;你可能需要编写一个函数&#xff0c;该函数可以返回指向不同类型数据的指针。使用 void* 可以实现…

Python中的null是什么?

在知乎上遇到一个问题&#xff0c;说&#xff1a;计算机中的「null」怎么读&#xff1f; null正确的发音是/n^l/&#xff0c;有点类似四声‘纳儿’&#xff0c;在计算机中null是一种类型&#xff0c;代表空字符&#xff0c;没有与任何一个值绑定并且存储空间也没有存储值。 P…

MySQL CONCAT函数的简单使用

CONCAT函数用于将mysql中查询多列的值拼成一列显示&#xff0c; 使用示例&#xff1a; SELECT CONCAT(attr_name,"&#xff1a;",attr_value) FROM pms_sku_sale_attr_value WHERE sku_id1; 上面SQL语句使用CONCAT函数将attr_name、attr_value两列的值拼成一列&am…