当前位置: 首页 > news >正文

前端开发:(四)JavaScript入门

JavaScript是一种强大的脚本语言,用于在网页中实现交互性和动态性。它的发展历史可以追溯到1995年,由Netscape公司的Brendan Eich设计开发而成。JavaScript的重要性在于它能够让网页实现丰富的功能和用户体验,成为Web开发的核心技术之一。

1. 介绍JavaScript
1.1 什么是JavaScript

JavaScript是一种轻量级、解释性的脚本语言,主要用于网页开发,可以嵌入到HTML中,由浏览器解释执行。它具有动态性、灵活性和跨平台特性,是实现网页交互和动态效果的重要工具。

1.2 JavaScript的发展历史

JavaScript最早由Netscape公司的Brendan Eich在1995年开发,最初命名为LiveScript,后来更名为JavaScript。随着JavaScript在网页开发中的广泛应用,ECMAScript标准化组织制定了JavaScript的标准规范,目前最新的版本是ECMAScript 2022。

1.3 JavaScript在Web开发中的作用

JavaScript在Web开发中起着至关重要的作用,它能够实现网页的动态效果、表单验证、交互性操作等功能。通过JavaScript,可以响应用户的操作、操作DOM元素、发送网络请求等,为用户提供更加丰富和友好的浏览体验。

2. JavaScript基础
2.1 JavaScript语法和语句

JavaScript语法类似于其他编程语言,包括变量声明、条件语句、循环结构等。它采用C语言风格的语法,具有自由的语句结构和动态的类型系统。

// 示例:JavaScript语法和语句
var x = 5;
if (x > 0) {console.log("x是正数");
} else {console.log("x是负数或零");
}
2.2 变量和数据类型

JavaScript中的变量使用var、let或const关键字声明,它具有动态类型特性,可以存储不同类型的数据,包括字符串、数字、布尔值、对象等。

// 示例:JavaScript变量和数据类型
var name = "John";
var age = 30;
var isMale = true;
2.3 运算符和表达式

JavaScript支持各种运算符,包括算术运算符、比较运算符、逻辑运算符等,通过这些运算符可以进行各种计算和逻辑操作。

// 示例:JavaScript运算符和表达式
var a = 5;
var b = 3;
var sum = a + b;
var isGreater = a > b;
2.4 条件语句和循环结构

条件语句(如if语句、switch语句)和循环结构(如for循环、while循环)是控制程序流程的重要工具,它们可以根据条件执行不同的代码块,或者重复执行特定的代码块。

// 示例:JavaScript条件语句和循环结构
var num = 10;
if (num % 2 === 0) {console.log("偶数");
} else {console.log("奇数");
}for (var i = 0; i < 5; i++) {console.log("当前值:" + i);
}

JavaScript的基础知识奠定了后续学习和应用的基础,理解好这些内容对于深入掌握JavaScript编程至关重要。

3. JavaScript函数
3.1 函数的定义和调用

函数是JavaScript中的重要概念,它用于封装可重用的代码块。函数通过function关键字定义,可以接受参数并返回值。

// 示例:JavaScript函数的定义和调用
function greet(name) {return "Hello, " + name + "!";
}var message = greet("John");
console.log(message); // 输出:Hello, John!
3.2 函数参数和返回值

函数可以接受多个参数,并且可以返回一个值。JavaScript中的函数参数可以是任意类型,包括基本类型和对象类型。

// 示例:JavaScript函数的参数和返回值
function add(x, y) {return x + y;
}var result = add(3, 5);
console.log(result); // 输出:8
3.3 匿名函数和箭头函数

除了通过function关键字定义函数外,JavaScript还支持匿名函数和箭头函数的方式定义函数,它们在某些场景下更加简洁和方便。

// 示例:JavaScript匿名函数和箭头函数
var square = function(x) {return x * x;
};var cube = x => x * x * x;console.log(square(3)); // 输出:9
console.log(cube(3)); // 输出:27
3.4 闭包的概念和应用

闭包是JavaScript中一个重要的概念,指的是函数和其周围状态(词法环境)的组合。闭包可以访问外部函数作用域中的变量,并且保持这些变量的状态。

// 示例:JavaScript闭包的应用
function outer() {var count = 0;function inner() {count++;console.log("Count: " + count);}return inner;
}var counter = outer();
counter(); // 输出:Count: 1
counter(); // 输出:Count: 2

JavaScript函数是编程中的重要组成部分,掌握函数的定义、调用、参数传递、返回值等知识对于编写复杂的JavaScript程序至关重要。

4. JavaScript对象
4.1 对象的创建和属性访问

在JavaScript中,对象是一种复合数据类型,用于存储键值对。对象可以通过字面量、构造函数或Object.create()方法创建,属性可以通过点号或方括号访问。

// 示例:JavaScript对象的创建和属性访问
var person = {name: "John",age: 30,gender: "male"
};console.log(person.name); // 输出:John
console.log(person["age"]); // 输出:30
4.2 内置对象(如Array、Date、Math等)

JavaScript提供了许多内置对象,用于处理各种数据和操作。常见的内置对象包括数组(Array)、日期(Date)、数学(Math)等,它们提供了丰富的方法和属性。

// 示例:JavaScript内置对象的使用
var numbers = [1, 2, 3, 4, 5];
console.log(numbers.length); // 输出:5var currentDate = new Date();
console.log(currentDate.getMonth()); // 输出:当前月份(0-11)console.log(Math.max(10, 20, 30)); // 输出:30
4.3 对象方法的定义和调用

对象的方法是存储在对象属性中的函数,通过对象调用。方法可以访问对象的属性,并且可以在方法内部使用this关键字引用当前对象。

// 示例:JavaScript对象方法的定义和调用
var calculator = {add: function(x, y) {return x + y;},subtract: function(x, y) {return x - y;}
};console.log(calculator.add(5, 3)); // 输出:8
console.log(calculator.subtract(5, 3)); // 输出:2
4.4 原型链和原型继承

JavaScript中的每个对象都有一个原型链,它用于实现对象之间的继承关系。通过原型链,对象可以继承其原型对象的属性和方法。

// 示例:JavaScript原型链和原型继承
function Person(name, age) {this.name = name;this.age = age;
}Person.prototype.sayHello = function() {console.log("Hello, my name is " + this.name);
};var john = new Person("John", 30);
john.sayHello(); // 输出:Hello, my name is John

JavaScript的对象是一种灵活且强大的数据结构,它能够组织和管理复杂的数据,并提供了丰富的方法和属性来操作和处理对象。深入理解对象的创建、属性访问、方法调用以及原型继承等概念对于编写高效的JavaScript程序至关重要。

5. JavaScript数组和字符串
5.1 数组的创建和操作

JavaScript数组是一种有序的集合,可以存储任意类型的数据。数组可以通过字面量、构造函数或Array.from()方法创建,可以通过索引访问和操作数组元素。

// 示例:JavaScript数组的创建和操作
var fruits = ["apple", "banana", "orange"];
fruits.push("grape"); // 添加元素到数组末尾
console.log(fruits.length); // 输出:4
console.log(fruits[1]); // 输出:banana
5.2 数组的常用方法(如push、pop、slice等)

JavaScript数组提供了许多常用的方法,用于操作数组元素。常见的方法包括push()、pop()、slice()、join()等,它们可以实现添加、删除、截取、连接等功能。

// 示例:JavaScript数组的常用方法
var numbers = [1, 2, 3, 4, 5];
numbers.pop(); // 删除数组末尾的元素
console.log(numbers); // 输出:[1, 2, 3, 4]var subArray = numbers.slice(1, 3); // 截取数组的子数组
console.log(subArray); // 输出:[2, 3]var str = numbers.join(","); // 将数组元素连接为字符串
console.log(str); // 输出:1,2,3,4
5.3 字符串的创建和操作

JavaScript字符串是一组字符的序列,可以使用单引号或双引号表示。字符串可以进行拼接、截取、替换等操作。

// 示例:JavaScript字符串的创建和操作
var str1 = "Hello";
var str2 = 'World';var message = str1 + " " + str2; // 字符串拼接
console.log(message); // 输出:Hello Worldvar substring = message.substring(6); // 截取子字符串
console.log(substring); // 输出:Worldvar replaced = message.replace("World", "JavaScript"); // 替换字符串
console.log(replaced); // 输出:Hello JavaScript

JavaScript的数组和字符串是编程中经常用到的数据类型,了解它们的创建、操作和常用方法对于处理数据和实现功能至关重要。

6. DOM操作
6.1 DOM树的结构和节点

DOM(文档对象模型)是HTML文档的树形表示,它由各种节点组成,包括元素节点、文本节点、注释节点等。DOM树的结构由HTML文档的层级结构决定。

// 示例:DOM树的结构和节点
<!DOCTYPE html>
<html>
<head><title>DOM示例</title>
</head>
<body><div id="container"><h1>Hello, World!</h1><p>This is a paragraph.</p></div>
</body>
</html>
6.2 获取DOM元素

JavaScript可以通过各种方法获取DOM元素,常见的方法包括getElementById()、getElementsByClassName()、getElementsByTagName()等。

// 示例:获取DOM元素
var container = document.getElementById("container");
var paragraphs = document.getElementsByTagName("p");
6.3 修改DOM元素的属性和样式

JavaScript可以通过修改DOM元素的属性和样式来实现动态效果。常见的操作包括设置元素的innerHTML、style属性等。

// 示例:修改DOM元素的属性和样式
container.innerHTML = "<p>New content</p>";
container.style.backgroundColor = "lightblue";
6.4 添加和删除DOM元素

JavaScript可以动态地添加和删除DOM元素,常见的操作包括createElement()、appendChild()、removeChild()等。

// 示例:添加和删除DOM元素
var newParagraph = document.createElement("p");
newParagraph.textContent = "New paragraph";
container.appendChild(newParagraph);container.removeChild(paragraphs[0]);

DOM操作是JavaScript中常见的任务之一,它可以实现网页的动态效果、内容更新等功能。深入理解DOM树的结构、节点类型以及常见的操作方法对于编写交互性强的网页至关重要。

7. 事件处理
7.1 事件的绑定和解绑

JavaScript可以通过addEventListener()方法来绑定事件,通过removeEventListener()方法来解绑事件。常见的事件包括click、mouseover、keypress等。

// 示例:事件的绑定和解绑
var button = document.getElementById("myButton");function handleClick() {console.log("Button clicked!");
}button.addEventListener("click", handleClick);// 解绑事件
button.removeEventListener("click", handleClick);
7.2 常见的事件类型(如click、mouseover、keypress等)

常见的事件类型包括鼠标事件、键盘事件、表单事件等,它们可以响应用户的操作并触发相应的处理函数。

// 示例:常见的事件类型
var element = document.getElementById("myElement");element.addEventListener("mouseover", function() {console.log("Mouse over!");
});element.addEventListener("keypress", function(event) {console.log("Key pressed: " + event.key);
});
7.3 事件对象和事件传播机制

事件处理函数可以接受一个事件对象作为参数,事件对象包含了触发事件的相关信息,如事件类型、触发元素等。事件传播机制指的是事件从发生元素向父元素或祖先元素传播的过程,分为捕获阶段和冒泡阶段。

// 示例:事件对象和事件传播机制
document.addEventListener("click", function(event) {console.log("Clicked on: " + event.target.tagName);
}, true); // 第三个参数指定使用捕获阶段// 如果点击了id为myElement的元素,则输出顺序为:#myElement -> BODY -> HTML -> DOCUMENT
7.4 事件委托和事件冒泡

事件委托是一种常见的优化手段,通过将事件绑定到父元素而不是每个子元素,可以减少事件处理函数的数量,提高性能。事件冒泡是指事件从内部元素冒泡到外部元素的过程。

// 示例:事件委托
var parentElement = document.getElementById("parentElement");parentElement.addEventListener("click", function(event) {if (event.target.tagName === "LI") {console.log("Clicked on list item: " + event.target.textContent);}
});

事件处理是JavaScript中实现交互性的重要部分,深入了解事件类型、事件对象、事件传播机制以及事件委托等概念对于编写复杂的交互式网页至关重要。

8. 异步编程
8.1 同步和异步的概念

在JavaScript中,同步操作是指按照代码的顺序依次执行,而异步操作是指不按照代码的顺序执行,而是在将来某个时间点执行。异步操作常用于处理耗时的任务,如网络请求、文件读写等。

// 示例:同步和异步的概念
console.log("Start");setTimeout(function() {console.log("Async operation");
}, 2000); // 在2秒后执行异步操作console.log("End");
8.2 回调函数的使用

在JavaScript中,回调函数是一种常见的处理异步操作的方式,通过将回调函数作为参数传递给异步函数,可以在异步操作完成后执行回调函数。

// 示例:回调函数的使用
function fetchData(callback) {setTimeout(function() {callback("Data fetched");}, 2000);
}function processData(data) {console.log("Processing data: " + data);
}fetchData(processData);
8.3 Promise的概念和使用

Promise是一种用于处理异步操作的对象,它可以表示一个异步操作的最终完成或失败,并且提供了链式调用的方式处理异步操作。

// 示例:Promise的使用
function fetchData() {return new Promise(function(resolve, reject) {setTimeout(function() {resolve("Data fetched");}, 2000);});
}fetchData().then(function(data) {console.log("Data: " + data);
}).catch(function(error) {console.error("Error: " + error);
});
8.4 async/await的使用

async/await是ES8(或称为ES2017)中引入的异步编程方式,它基于Promise,并提供了更加简洁和直观的语法来处理异步操作。

// 示例:async/await的使用
async function fetchData() {return new Promise(function(resolve, reject) {setTimeout(function() {resolve("Data fetched");}, 2000);});
}async function process() {try {const data = await fetchData();console.log("Data: " + data);} catch (error) {console.error("Error: " + error);}
}process();

异步编程是JavaScript中非常重要的概念,深入理解异步操作的原理以及各种处理异步操作的方式对于编写高效的JavaScript程序至关重要。

9. AJAX与Fetch API
9.1 AJAX的原理和使用

AJAX(Asynchronous JavaScript and XML)是一种用于创建异步网络请求的技术,它可以在不重新加载整个页面的情况下向服务器发送请求并接收响应。在现代Web开发中,通常使用XMLHttpRequest对象来实现AJAX请求。

// 示例:AJAX的使用
var xhr = new XMLHttpRequest();
xhr.open("GET", "https://api.example.com/data", true);
xhr.onreadystatechange = function() {if (xhr.readyState === 4 && xhr.status === 200) {console.log(xhr.responseText);}
};
xhr.send();
9.2 XMLHttpRequest对象的创建和使用

XMLHttpRequest对象是用于创建和发送AJAX请求的核心对象,它提供了许多方法和事件用于控制请求的过程,并在请求完成后获取响应数据。

// 示例:XMLHttpRequest对象的创建和使用
var xhr = new XMLHttpRequest();
xhr.open("GET", "https://api.example.com/data", true);
xhr.onreadystatechange = function() {if (xhr.readyState === 4 && xhr.status === 200) {console.log(xhr.responseText);}
};
xhr.send();
9.3 Fetch API的介绍和使用

Fetch API是一种现代的网络请求API,它基于Promise,并提供了更加简洁和灵活的方式来处理网络请求。Fetch API使用起来更加简洁清晰,并且支持流式操作和更复杂的请求。

// 示例:Fetch API的使用
fetch("https://api.example.com/data").then(response => {if (!response.ok) {throw new Error("Network response was not ok");}return response.json();}).then(data => {console.log(data);}).catch(error => {console.error("Fetch error:", error);});
9.4 使用Fetch进行网络请求

使用Fetch API进行网络请求非常简单,只需要调用fetch()函数并传入请求的URL即可。Fetch API返回一个Promise对象,可以使用.then()和.catch()方法处理响应和错误。

// 示例:使用Fetch进行网络请求
fetch("https://api.example.com/data").then(response => response.json()).then(data => console.log(data)).catch(error => console.error("Fetch error:", error));

AJAX与Fetch API是JavaScript中常用的网络请求技术,它们可以与服务器进行数据交换,实现异步加载和动态更新网页内容。深入理解这些技术的原理和使用方法对于Web开发至关重要。

相关文章:

前端开发:(四)JavaScript入门

JavaScript是一种强大的脚本语言&#xff0c;用于在网页中实现交互性和动态性。它的发展历史可以追溯到1995年&#xff0c;由Netscape公司的Brendan Eich设计开发而成。JavaScript的重要性在于它能够让网页实现丰富的功能和用户体验&#xff0c;成为Web开发的核心技术之一。 1…...

js文件忽略ESLint语法检查

1. 整个文件忽略 /* eslint-disable */ // 代码开始位置2. 临时禁止 /* eslint-disable */ console.log(hello); /* eslint-enable */3. 对指定规则忽略 /* eslint-disable no-alert, no-console */ alert(foo); console.log(bar); /* eslint-enable no-alert, no-console …...

【深度学习】:实验6布置,图像自然语言描述生成(让计算机“看图说话”)

清华大学驭风计划 因为篇幅原因实验答案分开上传&#xff0c;深度学习专栏持续更新中&#xff0c;期待的小伙伴敬请关注 实验答案链接http://t.csdnimg.cn/bA48U 有任何疑问或者问题&#xff0c;也欢迎私信博主&#xff0c;大家可以相互讨论交流哟~~ 案例 6 &#xff1a;图像自…...

内网安全-内网穿透

目录 内网渗透 Nc使用详解 Nc监听和探测 Nc传文件 termite内网穿透工具 ssh代理内网穿透 ssh配置socket代理 MSF多级网络穿透 内网渗透 Nc使用详解 Nc监听和探测 Nc传文件 termite内网穿透工具 1、termite 之前叫ew &#xff08;可以进行正向连接&#xff0c;可以…...

【Make编译控制 01】程序编译与执行

目录 一、编译原理概述 二、编译过程分析 三、编译动静态库 四、执行过程分析 一、编译原理概述 make&#xff1a; 一个GCC工具程序&#xff0c;它会读 makefile 脚本来确定程序中的哪个部分需要编译和连接&#xff0c;然后发布必要的命令。它读出的脚本&#xff08;叫做 …...

MySQL如何定位慢查询

MySQL中定位慢查询通常涉及到以下几个步骤&#xff1a; 1. 慢查询日志 开启慢查询日志是识别慢查询的第一步。通过设置slow_query_log变量为1&#xff0c;MySQL会记录所有执行时间超过long_query_time秒的查询。 -- 开启慢查询日志 SET GLOBAL slow_query_log ON;-- 设置慢…...

npm 上传一个自己的应用(4) 更新自己上传到NPM中的工具版本 并进行内容修改

前面 npm 上传一个自己的应用(2) 创建一个JavaScript函数 并发布到NPM 我们讲了将自己写的一个函数发送到npm上 那么 如果我们想到更好的方案 希望对这个方法进行修改呢&#xff1f; 比如 我们这里加一个方法 首先 我们还是要登录npm npm login然后 根据要求填写 Username 用…...

Linux开发:PAM1 介绍

PAM(Pluggable Authentication Modules )是Linux提供的一种通用的认证方式,他可以根据需要动态的加载认证模块,从而减少认证开发的工作量以及提供认证的灵活度。 1.PAM的框架 PAM的框架由一下几个部分构成 1)应用程序,即需要使用认证服务的程序,这些应用程序是使用抽象…...

Leetcode 3036. Number of Subarrays That Match a Pattern II

Leetcode 3036. Number of Subarrays That Match a Pattern II 1. 解题思路2. 代码实现 3036. Number of Subarrays That Match a Pattern II 1. 解题思路 这一题其实有点水&#xff0c;因为本质上还是一道套路题目&#xff0c;和前两周的两道题目一样&#xff0c;都是考察的…...

华为环网双机接入IPTV网络部署案例

环网双机接入IPTV网络部署案例 组网图形 图2 环网双机场景IPTV基本组网图 方案简介配置注意事项组网需求数据规划配置思路操作步骤配置文件 方案简介 随着IPTV业务的迅速发展&#xff0c;IPTV平台承载的用户也越来越多&#xff0c;用户对IPTV直播业务的可靠性要求越来越高。…...

“智能检测,精准把控。温湿度检测系统,为您的生活带来全方位的健康保障。”#非标协议项目【上】

“智能检测&#xff0c;精准把控。温湿度检测系统&#xff0c;为您的生活带来全方位的健康保障。”#非标协议项目【上】 前言预备知识1温湿度检测系统需求2.代码整合2.1找到编程实现LCD1602显示一行工程&#xff0c;打开代码文件&#xff0c;将所需的LCD1602驱动代码拷贝到温湿…...

牛客网SQL进阶137:第二快/慢用时之差大于试卷时长一半的试卷

官网链接&#xff1a; 第二快慢用时之差大于试卷时长一半的试卷_牛客题霸_牛客网现有试卷信息表examination_info&#xff08;exam_id试卷ID, tag试卷类别,。题目来自【牛客题霸】https://www.nowcoder.com/practice/b1e2864271c14b63b0df9fc08b559166?tpId240 0 问题描述 试…...

CVE-2022-0760 漏洞复现

CVE-2022-0760 NSS [HNCTF 2022 WEEK2]ohmywordpress 【CVE-2022-0760】 题目描述&#xff1a;flag在数据库里面。 开题&#xff1a; 顺着按钮一直点下去会发现出现一个按钮叫安装WordPress 安装完之后的界面&#xff0c;有一个搜索框。 F12看看network。 又出现了这个Wor…...

WordPress突然后台无法管理问题

登录WordPress后台管理评论&#xff0c;发现点击编辑、回复均无反应。 尝试清除缓存、关闭CF连接均无效。 查看插件时发现关闭wp-china-yes插件可以解决问题。 后来又测试了下发现加速管理后台这项&#xff0c;在启用时会发生点击无效问题&#xff0c;禁用就好了&#xff0c;不…...

STM32F1 - 标准外设库_规范

STM32F10x_StdPeriph_Lib_V3.6.0 1> 头文件包含关系2> .c文件内部结构3> 宏定义位置4> 位掩码bit mask5> .c文件中定义私有变量6> 枚举类型定义 1> 头文件包含关系 1个头文件stm32f10x.h 就把整个MCU以及标准外设库&#xff0c;就管理了&#xff1b; 2>…...

推荐系统|召回04_离散特征处理

离散特征处理 离散特征是什么 怎么处理离散特征 One-hot编码 Embedding嵌入 从one-hot到Embedding&#xff0c;已经节省了很多的存储空间&#xff0c;但当数据量大的时候&#xff0c;还是占空间&#xff0c;所以工业界仍会对Embedding进行优化 而一个物品所对应的Embedding参数…...

一个查看armv8系统寄存器-值-含义的方式

找到解压后的SysReg_xml_v86A-2019-12目录 wget https://developer.arm.com/-/media/developer/products/architecture/armv8-a-architecture/2019-12/SysReg_xml_v86A-2019-12.tar.gz wget https://developer.arm.com/-/media/developer/products/architecture/armv8-a-archi…...

LLMs之miqu-1-70b:miqu-1-70b的简介、安装和使用方法、案例应用之详细攻略

LLMs之miqu-1-70b&#xff1a;miqu-1-70b的简介、安装和使用方法、案例应用之详细攻略 目录 miqu-1-70b的简介 miqu-1-70b的安装和使用方法 1、安装 2、使用方法 miqu-1-70b的案例应用 miqu-1-70b的简介 2024年1月28日&#xff0c;发布了miqu 70b&#xff0c;潜在系列中的…...

npm 下载报错

报错信息 : 证书过期 (CERT_HAS_EXPIRED) D:\Apps\nodejs-v18.16.1\npx.cmd --yes create-next-app"latest" . --ts npm ERR! code CERT_HAS_EXPIRED npm ERR! errno CERT_HAS_EXPIRED npm ERR! request to https://registry.npm.taobao.org/create-next-app failed…...

GPT-4登场:多模态能力革新,提升ChatGPT与必应体验,开放API助力游戏革新

GPT-4登场&#xff1a;多模态能力革新&#xff0c;提升ChatGPT与必应体验&#xff0c;开放API助力游戏革新 引言 在人工智能领域&#xff0c;GPT-4的发布标志着一个新时代的到来。这一多模态大模型不仅在技术性能上实现了飞跃&#xff0c;更在功能层面带来全新的突破。GPT-4的…...

【芯片设计- RTL 数字逻辑设计入门 11.1 -- 状态机实现 移位运算与乘法 1】

文章目录 移位运算与乘法状态机简介SystemVerilog中的测试平台VCS 波形仿真 阻塞赋值和非阻塞赋值有限状态机&#xff08;FSM&#xff09;与无限状态机的区别 本篇文章接着上篇文章【芯片设计- RTL 数字逻辑设计入门 11 – 移位运算与乘法】 继续介绍&#xff0c;这里使用状态机…...

MongoDB系列:管道操作:聚合阶段操作符(二)

MongoDB系列&#xff1a;管道操作&#xff1a;聚合阶段操作符&#xff08;二&#xff09; 聚合阶段操作符介绍 本节只编写了个人认为可能用到的操作符&#xff0c;详细更多的操作符以及使用注意事项请前往MongoDB官网。 $match 过滤匹配数据。 // 插入数据 db.orders.inse…...

C++ //练习 5.12 修改统计元音字母的程序,使其能统计以下含有两个字符的字符序列的数量:ff、fl和fi。

C Primer&#xff08;第5版&#xff09; 练习 5.12 练习 5.12 修改统计元音字母的程序&#xff0c;使其能统计以下含有两个字符的字符序列的数量&#xff1a;ff、fl和fi。 环境&#xff1a;Linux Ubuntu&#xff08;云服务器&#xff09; 工具&#xff1a;vim 代码块 /****…...

C语言-----自定义类型-----结构体枚举联合

结构体和数组一样&#xff0c;都是一群数据的集合&#xff0c;不同的是数组当中的数据是相同的类型&#xff0c;但是结构体中的数据类型可以不相同&#xff0c;结构体里的成员叫做成员变量 结构体类型是C语言里面的一种自定义类型&#xff0c;我们前面已经了解到过int,char,fl…...

elasticsearch下载及可视化工具下载使用

elasticsearch下载及配置、启动 一、下载 Download Elasticsearch | Elastic 二、启动 双击bat即可。 出现如下说明启动成功&#xff1a; 访问测试&#xff1a; 三、注意 &#xff08;1&#xff09;因为es启动默认端口是&#xff1a;9200,所以需要检查此端口是否被占用。…...

vim常用命令以及配置文件

layout: article title: “vim文本编译器” vim文本编辑器 有三种模式: 命令模式 文本模式, 末行模式 vim命令大全 - 知乎 (zhihu.com) 命令模式 插入 i: 切换到输入模式&#xff0c;在光标当前位置开始输入文本。 a: 进入插入模式&#xff0c;在光标下一个位置开始输入文…...

2024年的VUE2下的无效指令npm install --save vue-i18n

vue官网已经声明了不再维护vue2, vue-i18n安装依赖的时候就只接安装vue3的vue-i18, 直接报错&#xff1a; > npm install --save vue-i18n npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! While resolving: yudao-ui-admin…...

计算机视觉主要知识点

计算机视觉是指利用计算机和算法来解析和理解图片和视频中的内容。这是一个跨学科领域&#xff0c;融合了计算机科学、图像处理、机器学习和模式识别等多方面的技术。以下是一些计算机视觉入门的基本知识点&#xff1a; 图像基础&#xff1a; 像素&#xff1a;图片的最基本组成…...

python 基础知识点(蓝桥杯python科目个人复习计划35)

今日复习计划&#xff1a;阶段总结&#xff08;新年贺礼&#xff09; 1.python简介&#xff08;定义&#xff0c;优点&#xff0c;缺点&#xff0c;应用领域&#xff09; python&#xff1a;一种广泛使用的解释型&#xff0c;高级和通用的编程语言 python极简&#xff0c;生…...

使用HTML、CSS和JavaScript来创建一个粒子效果,粒子会跟随鼠标点击位置生成

文章目录 一、粒子效果二、JavaScript三、HTML四、CSS五、热门文章 一、粒子效果 以下是一个简单的示例&#xff0c;使用HTML、CSS和JavaScript来创建一个粒子效果&#xff0c;粒子会跟随鼠标点击位置生成&#xff1a; <!DOCTYPE html> <html> <head><t…...

太原建站模板系统/国外seo大神

文章目录mapstructure库字段标签内嵌结构未映射字段Metadata弱类型输入逆向转换解码器示例在数据传递时&#xff0c;需要先编解码&#xff1b;常用的方式是JSON编解码&#xff08;参见《 golang之JSON处理》&#xff09;。但有时却需要读取部分字段后&#xff0c;才能知道具体类…...

将网站建设外包出去的好处/搜索引擎大全网站

15.19 从C语言中读取类文件对象 问题 你要写C扩展来读取来自任何Python类文件对象中的数据&#xff08;比如普通文件、StringIO对象等&#xff09;。 解决方案 要读取一个类文件对象的数据&#xff0c;你需要重复调用 read() 方法&#xff0c;然后正确的解码获得的数据。 下面是…...

做别人一样的网站吗/什么是营销型网站?

2017年7月28日&#xff0c;今天是一个里程碑的日子&#xff0c;根据参数及数值通过结对有效算法自动生成字典形式的测试用例功能模块完成&#xff0c;鼓掌&#xff0c;鼓掌&#xff01; 替换postdata模板内指定元素值的代码如下&#xff1a; 1 import copy2 import createPWte…...

小网站做几个关键词/百度小说风云榜2022

当我说更改时&#xff0c;我没有说关于工作表本身的更改。 我的意思是我一直在思考如何使工作表可用&#xff0c;并且我将进行两项更改。 首先&#xff0c;我将删除纸张的按需打印服务。 其次&#xff0c;在下载表格之前&#xff0c;我将无需注册。 您现在仍然可以在DialogueS…...

vue做的小网站/做推广的都是怎么推

前言Git简介实用主义深入探索总结参考资料Git简介Git 是一种分布式版本控制系统&#xff0c;它可以不受网络连接的限制&#xff0c;加上其它众多优点&#xff0c;目前已经成为程序开发人员做项目版本管理时的首选&#xff0c;非开发人员也可以用 Git 来做自己的文档版本管理工具…...

网站建设的展望/seo优化工具哪个好

SSH 登录太慢可能是 DNS 解析的问题&#xff0c;默认配置下 sshd 初次接受 ssh 客户端连接的时候会自动反向解析客户端 IP 以得到 ssh 客户端的域名或主机名。如果这个时候 DNS 的反向解析不正确&#xff0c;sshd 就会等到 DNS 解析超时后才提供 ssh 连接&#xff0c;这样就造成…...