WEB06JavaScriptAjax

基础语法

引入方式

引入方式

内部脚本:将JS代码定义在HTML页面中

  • JavaScript代码必须位于<script></script>标签之间

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

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

外部脚本:将 JS代码定义在外部 JS文件中,然后引入到 HTML页面中

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

  • <script>标签不能自闭合

输出语句

输出语句

  • 使用 window.alert() 写入警告框

  • 使用 document.write() 写入 HTML 输出

  • 使用 console.log() 写入浏览器控制台

变量声明

变量

  • JavaScript 中用 let 关键字来声明变量

  • JavaScript 中用 const 关键字来声明常量

  • JavaScript 是一门弱类型语言,变量可以存放不同类型的值

  • 变量名需要遵循如下规则:

    1. 组成字符可以是任何字母、数字、下划线(_)或美元符号($)

    2. 数字不能开头

    3. 建议使用驼峰命名

数据类型

数据类型

JavaScript中也有数据类型的概念,主要有下面几种

原始类型

  • string:字符串,单双引皆可

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

  • boolean:布尔。true,false

  • object:对象和null

  • undefined:当声明的变量未初始化时,该变量的默认值是 undefined

  • 使用 typeof 运算符可以获取数据类型

运算符

运算符

== 与 ===

特殊用法

  • 字符串字面值参与运算的时候会自动转为数字(加法除外)

  • 除法运算会按照人类运算执行,根java中的除法有所区别

流程控制

流程控制语句

流程控制

类型转换

在js中,任何类型都可以转为boolean:

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

  • String:空字符串为false,其他均为true

  • 对象: Null 和 undefined为false, 其它均为true

函数和事件

函数

定义方式一:

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

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

  • 注意:

  • 形式参数不需要类型,因为Js是弱类型语言

  • 返回值也不需要定义类型,可以在函数内部直接使用return返回即可

  • js中如果出现同名的方法,后面的会覆盖前面的

  • 调用:函数名称(实际参数列表)

定义方式二:

  • JS中,函数调用可以传递任意个数的参数

事件

事件

  • 事件:HTML事件是发生在HTML元素上的 “事情”。比如:

    1. 按钮被点击

    2. 鼠标移动到元素上

    3. 按下键盘按键

  • 事件监听:JavaScript可以在事件被侦测到时 执行代码。

事件绑定

  • 方式一:通过 HTML标签中的事件属性进行绑定

  • <input type="button" οnclick="on()" value="按钮1">

    <script> function on(){ alert('我被点击了!'); } </script>

  • 方式二:通过 DOM 元素属性绑定

  • <input type="button" id="btn" value="按钮2">

    <script> document.getElementById('btn').οnclick=function(){ alert('我被点击了!'); } </script>

对象

数组对象

数组对象

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

  • 定义

    let 变量名 = new Array(元素列表); //方式一
    let 变量名 = [ 元素列表 ]; //方式二
  • 访问

  • arr[ 索引 ] = 值;

注意事项

  • JavaScript 中的数组相当于 Java 中集合,数组的长度是可变的,而 JavaScript 是弱类型,所以可以存储任意的类型的数据。

属性

方法

  • 箭头函数(ES6):是用来简化函数定义语法的。具体形式为: (…) => { … } , 如果需要给箭头函数起名字: let xxx = (…) => { … }

字符串对象

字符串对象

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

    let 变量名 = new String("…") ; //方式一
    let 变量名 = "…" ; //方式二

属性

方法

自定义对象

自定义对象

  • 定义格式:

    let 对象名 = {
    属性名1: 属性值1, 
    属性名2: 属性值2,
    属性名3: 属性值3,
    方法名: function(参数){
    方法体
    }
    };
  • 调用格式

  • 对象名.属性名;
    对象名.函数名();

JSON对象

JSON-介绍

  • 概念:JavaScript Object Notation,JavaScript对象标记法。

  • JSON 是通过 JavaScript 对象标记法书写的文本,跟js对象的主要区别就在于,JSON中的键必须是字符串类型

JSON-基础语法

  • 定义

    let 变量名 = '{"key1": value1, "key2": value2}';
  • JSON字符串转为JS对象

    let jsObject = JSON.parse(userStr);
  • JS对象转为JSON字符串

    let jsonStr = JSON.stringify(jsObject);

BOM对象

BOM

  • 概念:Browser Object Model 浏览器对象模型,允许JavaScript与浏览器对话, JavaScript 将浏览器的各个组成部分封装为对象。

Window

  • 介绍:浏览器窗口对象。

  • 获取:直接使用window,其中 window. 可以省略。

  • 属性

    1. history:对 History 对象的只读引用。请参阅 History 对象。

    2. location:用于窗口或框架的 Location 对象。请参阅 Location 对象。

    3. navigator:对 Navigator 对象的只读引用。请参阅 Navigator 对象。

  • 方法

    1. alert():显示带有一段消息和一个确认按钮的警告框。

    2. confirm():显示带有一段消息以及确认按钮和取消按钮的对话框。

    3. setInterval():按照指定的周期 (以毫秒计)来调用函数或计算表达式。

    4. setTimeout():在指定的毫秒数后调用函数或计算表达式。

Location

  • 介绍:地址栏对象。

  • 获取:使用 window.location 获取,其中 window. 可以省略。

  • 属性: href:设置或返回完整的URL。

DOM对象

DOM

  • 概念:Document Object Model ,文档对象模型。

  • 将标记语言的各个组成部分封装为对应的对象:

    1. Document:整个文档对象

    2. Element:元素对象

    3. Attribute:属性对象

    4. Text:文本对象

    5. Comment:注释对象

  • HTML中的Element对象可以通过Document对象获取,而Document对象是通过window对象获取的。

  • Document对象中提供了以下获取Element元素对象的函数:

ajax

ajax

Ajax

  • 概念:Asynchronous JavaScript And XML,异步的JavaScript和XML。

  • 作用:

    1. 数据交换:通过Ajax可以给服务器发送请求,并获取服务器响应的数据。

    2. 异步交互:可以在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页的技术,如:搜索联想、用户名是否可用的校验等等。

同步与异步

原生Ajax

  • 准备数据地址:http://yapi.smart-xwork.cn/mock/169327/emp/list

  • 创建XMLHttpRequest对象:用于和服务器交换数据

  • 向服务器发送请求

  • 获取服务器响应数据

axios

Axios

  • 介绍:Axios 对原生的Ajax进行了封装,简化书写,快速开发。

  • 官网: Axios中文文档 | Axios中文网

请求方式别名

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

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

相关文章

常见的气体流量计有哪些?

1.气体涡轮流量计 适用场合&#xff1a;流量变化小&#xff0c;脉动流频率小&#xff0c;中低压洁净天然气优点 1.精度高&#xff0c;重复性好 2.测量范围广&#xff0c;压损小&#xff0c;安装维修方便 3.具有较高的抗电磁干扰和抗震动能力缺点&#xff1a;分辨率低&#xff…

浏览器中js外挂脚本的执行方式

1、开发工具控制台交互执行 网页中按F12打开开发者工具&#xff0c;选择“控制台”&#xff0c;键入js脚本命令回车执行&#xff0c;适用于临时使用脚本逻辑简单的场景&#xff0c;实例如下&#xff1a; // 获取网页元素的文本脚本 var elem document.getElementById("…

接入应用内支付服务,提高商业变现效率

在当今竞争激烈的移动应用市场中&#xff0c;开发者们面临着提升应用商业变现能力的挑战。用户体验的流畅性和支付的安全性至关重要。 HarmonyOS SDK应用内支付服务&#xff08;IAP Kit&#xff09;为开发者提供了一站式的解决方案&#xff0c;简化了应用内支付的接入流程&…

C嘎嘎:类和对象(一)

目录 面向过程和面向对象的初步认识 类的引入 类的定义 类的访问限定符及封装 访问限定符 封装 类的作用域 类的实例化 类对象模型 如何计算类对象大小 结构体内存对齐规则 this指针 this指针的引出 this指针的特性 类的6个默认成员函数 构造函数 概念 特性 …

喜讯丨美格智能通过国际EcoVadis平台认证企业社会责任并荣获承诺奖章,彰显可持续发展实力

作为全球领先的无线通信模组及解决方案提供商&#xff0c;美格智能在社会责任领域再创新高。近日&#xff0c;美格智能凭借在企业社会责任和可持续性采购发展方面的卓越表现&#xff0c;通过国际在线权威评价机构EcoVadis对公司环境、劳工与人权、商业道德、可持续采购等方面审…

根据空格、制表符、回车符等分割字符串re.split

【小白从小学Python、C、Java】 【考研初试复试毕业设计】 【Python基础AI数据分析】 根据空格、制表符、 回车符等分割字符串 re.split [太阳]选择题 根据给定的Python代码&#xff0c;哪个选项是正确的&#xff1f; import re pattern r\s print(f"【显示】pattern{…

高清图片压缩无水印小程序源码系统 前后端分离 带完整的安装代码包以及搭建教程

系统概述 在当今的数字化时代&#xff0c;图片作为信息传播的重要载体&#xff0c;其质量和传输效率直接影响到用户体验。然而&#xff0c;高清图片往往伴随着较大的文件体积&#xff0c;这不仅会占用大量存储空间&#xff0c;还会拖慢网页或应用的加载速度。因此&#xff0c;…

热烈祝贺!全视通多家客户上榜全球自然指数TOP100!

2024年6月18日&#xff0c;全球医疗机构自然指数TOP100榜单发布&#xff0c;中国医疗机构在其中的表现尤为引人注目。 根据《自然》杂志网站发布的数据&#xff0c;此次公布的排名是基于&#xff08;2023年3月1日至2024年2月29日&#xff09;的统计数据&#xff0c;全球医疗机构…

旗晟机器人AI智能算法有哪些?

在当今迅猛发展的工业4.0时代&#xff0c;智能制造和自动化运维已然成为工业发展至关重要的核心驱动力。伴随技术的持续进步&#xff0c;工业场景中的运维巡检已不再单纯地依赖于传统的人工运维方式&#xff0c;而是愈发多地融入了智能化的元素&#xff0c;其中智能巡检运维系统…

前端Din字体和造字工房力黑字体文件

Din 字体是一种经典的、简洁的无衬线字体&#xff0c;它源自1930年代的德国交通标志设计。 造字工房力黑字体适用于数字&#xff0c;驾驶舱标题等统计界面 DIN-Medium.otf 案例 造字工房力黑.TTF 案例

记录一次MySql锁等待 (Lock wait timeout exceeded)异常

[TOC](记录一次MySql锁等待 (Lock wait timeout exceeded)异常) Java执行一个SQL查询未提交&#xff0c;遇到1205错误。 java.lang.Exception: ### Error updating database. Cause: java.sql.SQLException: Lock wait timeout exceeded; try restarting transactionCluster…

动手学深度学习6.2 图像卷积-笔记练习(PyTorch)

以下内容为结合李沐老师的课程和教材补充的学习笔记&#xff0c;以及对课后练习的一些思考&#xff0c;自留回顾&#xff0c;也供同学之人交流参考。 本节课程地址&#xff1a;卷积层_哔哩哔哩_bilibili 代码_哔哩哔哩_bilibili 本节教材地址&#xff1a;6.2. 图像卷积 — 动…

浅析Nginx技术:开源高性能Web服务器与反向代理

什么是Nginx&#xff1f; Nginx是一款轻量级、高性能的HTTP和反向代理服务器&#xff0c;也可以用作邮件代理服务器。它最初由俄罗斯的程序员Igor Sysoev在2004年开发&#xff0c;并于2004年首次公开发布。Nginx的主要优势在于其非阻塞的事件驱动架构&#xff0c;能够处理大量并…

Vue3使用ref绑定组件获取valueRef.value为null的解决

问题&#xff1a; onMounted(() > {nextTick(()>{console.log(treeselectRef, treeselectRef.value);console.log(treeselectRef.value, treeselectRef.value);}); });输出&#xff1a; 查看绑定和定义都没有问题&#xff0c;还是获取不到 解决&#xff1a;使用getCur…

14-55 剑和诗人29 - RoSA:一种新的 PEFT 方法

介绍 参数高效微调 (PEFT) 方法已成为 NLP 领域研究的热门领域。随着语言模型不断扩展到前所未有的规模&#xff0c;在下游任务中微调所有参数的成本变得非常高昂。PEFT 方法通过将微调限制在一小部分参数上来提供解决方案&#xff0c;从而以极低的计算成本在自然语言理解任务上…

深度学习(笔记内容)

1.国内镜像网站 pip使用清华源镜像源 pip install <库> -i https://pypi.tuna.tsinghua.edu.cn/simple/ pip使用豆瓣的镜像源 pip install <库> -i https://pypi.douban.com/simple/ pip使用中国科技大学的镜像源 pip install <库> -i https://pypi.mirro…

vite工程化开发配置---持续更新

vite支持tsx开发 根据之前写的文章vue3vitetseslintprettierstylelinthuskylint-stagedcommitlintcommitizencz-git里面tsconfig配置了jsx相关选项&#xff0c;但是想要vite能够识别我们还需要配置一下 安装vitejs/plugin-vue-jsx pnpm i -D vitejs/plugin-vue-jsxvite.confi…

如何压缩pdf文件大小,怎么压缩pdf文件大小

在数字化时代&#xff0c;pdf文件因其稳定的格式和跨平台兼容性&#xff0c;成为了工作与学习中不可或缺的一部分。然而&#xff0c;随着pdf文件内容的丰富&#xff0c;pdf文件的体积也随之增大&#xff0c;给传输和存储带来了不少挑战。本文将深入探讨如何高效压缩pdf文件大小…

小米手机短信怎么恢复?不用求人,3个技巧一网打尽

当你突然发现安卓手机里的重要短信不见了&#xff0c;是不是感到一阵心慌意乱&#xff1f;别急&#xff0c;不用求人&#xff0c;更不用焦虑。作为基本的社交功能&#xff0c;短信是我们与外界沟通的重要桥梁&#xff0c;当删除后&#xff0c;短信怎么恢复呢&#xff1f;今天&a…

重生奇迹MU 有向导不迷路

欢迎来到重生奇迹MU冒险世界&#xff01;为了让您更好地享受游戏乐趣&#xff0c;我们特别为您准备了一位贴心的导游&#xff0c;让您在游戏中不再迷路。跟随我们的导游&#xff0c;您将更快地了解游戏规则&#xff0c;更快地升级&#xff0c;更快地获得胜利&#xff01;快来加…