JavaScript基础语法

一、JavaScript编写方式

位置一:HTML代码行内(不推荐)

<!-- 方式一:行内编写 -->
<a href="javascript:alert('hello world')">hello world</a>
<!-- 方式二:行内编写,通过监听事件的方式 -->
<!-- href='#' 会导致点击后跳转到页面头部 -->
<a href="#" onclick="alert('hello world!')">hello world</a>
<!-- href="javascript:void(0)" 可以解决点击超链接跳转到页面头部的问题; void()是一个不会返回值的方法,它会执行方法内部的表达式 -->
<a href="javascript:void(0)" onclick="alert('hello world!')">hello world</a>

位置二:script标签中

<script src="./js/demo01.js"></script>

位置三:外部的script文件

  • 需要通过script元素的src属性引入JavaScript文件
 <script>alert("hello world1")</script>

二、noscript元素的使用

如果运行的浏览器不支持JavaScript, 那么我们如何给用户更好的提示呢?

  • 针对早期浏览器不支持 JavaScript 的问题,需要一个页面优雅降级的处理方案;
  • 最终, <noscript>元素出现,被用于给不支持 JavaScript 的浏览器提供替代内容;

下面的情况下, 浏览器将显示包含在<noscript>中的内容:

  • 浏览器不支持脚本;

  • 浏览器对脚本的支持被关闭。

<noscript><h1>您的浏览器不支持JavaScript, 请打开或者更换浏览器~</h1>
</noscript>

三、JavaScript注意事项

注意一: script 元素不能写成单标签

  • 在外联式引用js文件时,script标签中不可以写JavaScript代码,并且script标签不能写成单标签;
  • 即不能写成<script src='index.js' />

注意二: 省略 type 属性

  • 在以前的代码中,<<script>标签中会使用 type="text/javascript"
  • 现在可不写这个代码了,因为JavaScript 是所有现代浏览器以及 HTML5 中的默认脚本语言

注意三: 加载顺序

  • 作为HTML文档内容的一部分,JavaScript默认遵循HTML文档的加载顺序,即自上而下的加载顺序;
  • 推荐将JavaScript代码和编写位置放在body子元素的最后一行

注意四: JavaScript代码严格区分大小写

  • HTML元素和CSS属性不区分大小写,但是在JavaScript中严格区分大小写

后续补充:script元素还有deferasync属性,我们后续再详细讲解

四、JavaScript交互方式

JavaScript有如下和用户交互的手段:

  • 最常见的是通过console.log, 目前大家掌握这个即可;

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><style>/*  */</style>
</head>
<body><!-- <input type="text"> --><script>// 1.交互方式一: alert函数alert("Hello World");// 2.交互方式二: console.log函数, 将内容输出到控制台中(console)// 使用最多的交互方式console.log("Hello Coderwhy");// 编写的JavaScript代码出错了// message.length// 3.交互方式三: document.write()document.write("Hello Kobe");// 4.交互方式四: prompt函数, 作用获取用户输入的内容var result = prompt("请输入你的名字: ");alert("您刚才输入的内容是:" + result);</script>
</body>
</html>

1.Chrome的调试工具

在前面我们利用Chrome的调试工具来调试了HTML、CSS,它也可以帮助我们来调试JavaScript。

当我们在JavaScript中通过console函数显示一些内容时,也可以使用Chrome浏览器来查看:

在这里插入图片描述

另外补充几点:

  1. 如果在代码中出现了错误,那么可以在console中显示错误;
  2. console中有个 > 标志,它表示控制台的命令行
    1. 在命令行中我们可以直接编写JavaScript代码,按下enter会执行代码;
    2. 如果希望编写多行代码,可以按下shift+enter来进行换行编写;
  3. 在后续我们还会学习如何通过debug方式来调试、查看代码的执行流程;

五、JavaScript语句和分号

语句是向浏览器发出的指令,通常表达一个操作或者行为(Action)。

  • 语句英文是Statements;
  • 比如下面这个就是一条赋值语句
var a = 1 + 2;

1 + 2 叫做表达式,一个为了得到返回值的计算式。

语句和表达式的区别在于,前者主要为了进行某种操作,一般情况下不需要返回值;后者则是为了得到返回值,一定会返回一个值

通常每条语句的后面我们会添加一个分号,表示语句的结束:

  • 分号的英文是semicolon
  • 当存在换行符(line break)时,在大多数情况下可以省略分号;
  • JavaScript 将换行符理解成“隐式”的分号;
  • 这也被称之为自动插入分号(Automatic Semicolon Insertion 简称ASI);

分号表示一条语句的结束。JavaScript 允许省略行尾的分号。事实上,确实有一些开发者行尾从来不写分号。但是,由于下面要讨论的原因,建议还是不要省略这个分号

是否省略分号的讨论

六、JavaScript注释方式

在HTML、CSS中我们都添加过注释,JavaScript也可以添加注释。

JavaScript的注释主要分为三种:

  • 单行注释
  • 多行注释
  • 文档注释(VSCode中需要在单独的JavaScript文件中编写才有效)

详情见代码

// 单行注释
/* 多行注释 */
/*** 文档注释*/

注意:JavaScript也不支持注释的嵌套

VSCode插件和配置

推荐一个VSCode的插件:(个人经常使用的)

  • ES7+ React/Redux/React-Native snippets
  • 这个插件是在react开发中会使用到的,但是我经常用到它里面的打印语句;

另外再推荐一个插件:

  • Bracket Pair Colorizer 2,但是该插件已经不再推荐使用了;
  • 因为VSCode已经内置了该功能,我们可以直接通过VSCode的配置来达到插件的效果;
  • 如何配置呢?
"editor.bracketPairColorization.enabled": true,
"editor.guides.bracketPairs":"active"

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

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

相关文章

学信息系统项目管理师第4版系列03_文件与标准

审核未通过&#xff0c;删除文件部分&#xff0c;仅保留标准化相关内容&#xff0c;重发 12. 标准化 12.1. 采用国际标准和国外先进标准的程度分为等同采用、修改采用和等效采用 3 种 12.1.1. 【高21上选20】 12.1.2. 采用指与国际标准在技术内容和文本结构上相同,或者与国…

期权是什么?期权的优缺点是什么?

期权是一种合约&#xff0c;有看涨期权和看跌期权两种类型&#xff0c;也就是做多和做空两个方向&#xff0c;走势标的物对应大盘指数&#xff0c;这也是期权与其他金融工具的主要区别之一&#xff0c;可以用于套利&#xff0c;对冲股票和激进下跌的风险&#xff0c;下文介绍期…

DML语句的用法(MySQL)

文章目录 前言一、DML介绍二、DML语句操作1、给指定字段添加数据2、给全部字段添加数据3、批量添加数据4、修改数据5、删除数据 总结 前言 本文主要介绍SQL语句中DML语句的用法。 在实验开始之前我们先创建一下所要使用表&#xff0c;如下图所示&#xff1a; 一、DML介绍 DM…

Modbus转Profinet网关连接三菱变频器博图快速配置

本案例将分享如何使用兴达易控的modbus转profinet网关&#xff08;XD-MDPN100&#xff09;来连接西门子1200系列plc&#xff0c;并实现三菱变频器的485通讯兼容转modbusTCP通信。通过在博图中进行配置&#xff0c;我们可以实现设备之间的连接和通信。 首先&#xff0c;我们需要…

webassembly003 GGML Tensor Library part-1

GGML ggml的函数 可以看到官方示例项目仅依赖于#include "ggml/ggml.h"&#xff0c; #include "common.h"&#xff0c;可以阅读ggml.h获取ggml的使用帮助 函数解释注释ggml_tensor多维张量按行主顺序存储。ggml_tensor结构包含每个维度中元素数&#xf…

httpd协议与apache

1.http 相关概念 HTTP是处于应用层的协议&#xff0c;使用TCP传输层协议进行可靠的传送。因此&#xff0c;需要特别提醒的是&#xff0c;万维网是基于因特网的一种广泛因特网应用系统&#xff0c;且万维网采用的是HTTP&#xff08;80/TCP&#xff09;和 HTTPS&#xff08;443/…

OpenCV基础知识(8)— 图形检测

前言&#xff1a;Hello大家好&#xff0c;我是小哥谈。图形检测是计算机视觉的一项重要功能。通过图形检测可以分析图像中可能存在的形状&#xff0c;然后对这些形状进行描绘&#xff0c;例如搜索并绘制图像的边缘&#xff0c;定位图像的位置&#xff0c;判断图像中有没有直线、…

前端开发工具: VSCode

VSCode 安装使用教程&#xff08;图文版&#xff09; | arry老师的博客-艾编程 1. 下载 在官方网站&#xff1a;https://code.visualstudio.com/ 下载最新版本的 VSCode 即可 2. VSCode 常见插件安装 所有插件安装后,需要重启一下才生效 2.1 简体中文语言包 2.2 编辑器主…

webscoket在vue中的使用

项目场景&#xff1a; 提示&#xff1a;项目相关背景&#xff1a; 什么是webscoket&#xff1f;: WebSocket是一种计算机通信协议&#xff0c;通过单个TCP连接提供全双工通信信道。实现了web客户端和服务器之间的实时通信&#xff0c;与传统的HTTP连接相比&#xff0c;允许以…

Docker harbor私有仓库部署与管理

一、搭建本地私有仓库二、Harbor私有仓库部署与管理1、Harbor概述2、Harbor的特性3、Harbor的核心组件3.1 Proxy3.2 Registry3.3 Core services3.3.1 UI&#xff08;harbor-ui&#xff09;3.3.2 WebHook3.3.3 Token 服务 3.4 Database&#xff08;harbor-db&#xff09;3.5 Log…

Unity3D软件安装包分享(附安装教程)

目录 一、软件简介 二、软件下载 一、软件简介 Unity3D是一款全球知名的游戏开发引擎&#xff0c;由Unity Technologies公司开发。它提供了一个跨平台、多功能的开发环境&#xff0c;支持创建2D和3D游戏、交互式应用、虚拟现实、增强现实等多种类型的应用程序。以下是Unity3D…

svn下载

Download | VisualSVN for Visual Studio svn下载

2023年高教社杯 国赛数学建模思路 - 复盘:校园消费行为分析

文章目录 0 赛题思路1 赛题背景2 分析目标3 数据说明4 数据预处理5 数据分析5.1 食堂就餐行为分析5.2 学生消费行为分析 建模资料 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 赛题背景 校园一卡通是集…

nginx调优(二)

一、event模块: 用于配置服务器的事件驱动机制的模块。它定义了 Nginx 如何处理并发连接和网络事件&#xff0c;以及如何与底层操作系统的事件机制交互。 1.最大并发连接数&#xff1a; worker_connections 65536; 2.选择事件驱动&#xff1a; nginx默认使用epoll时间驱动类…

windows系统 Fooocus 图片生成模型 ,4-6GB显存即可玩,27S/p

安装步骤: 1.下载程序代码框架,大小2GB ,下载 ​​​​​​https://github.com/lllyasviel/Fooocus/releases/download/1.0.35/Fooocus_win64_1-1-1035.7z 2.下载模型文件sd_xl_base_1.0_0.9vae.safetensors ,大小6GBhttps://huggingface.co/stabilityai/stable-diffusion-x…

Window基础命令

文章目录 查看哪些端口被禁用TCP协议删除开机启动项方案1方案2 查看哪些端口被禁用TCP协议 netsh interface ipv4 show excludedportrange protocoltcp删除开机启动项 方案1 列出所有启动项 bcdedit /enum仔细看你要删除的是哪一项&#xff08;看description&#xff09;&a…

2 hadoop的目录

1. 目录结构&#xff1a; 其中比较的重要的路径有&#xff1a; hdfs,mapred,yarn &#xff08;1&#xff09;bin目录&#xff1a;存放对Hadoop相关服务&#xff08;hdfs&#xff0c;yarn&#xff0c;mapred&#xff09;进行操作的脚本 &#xff08;2&#xff09;etc目录&#x…

数据结构入门 — 顺序表详解

前言 数据结构入门 — 顺序表详解 博客主页链接&#xff1a;https://blog.csdn.net/m0_74014525 关注博主&#xff0c;后期持续更新系列文章 文章末尾有源码 *****感谢观看&#xff0c;希望对你有所帮助***** 文章目录 前言一、顺序表1. 顺序表是什么2. 优缺点 二、概念及结构…

32、启用 HTTP 响应压缩和编程式配置Web应用

★ 启用HTTP压缩 就是前端页面如果改动的比较多&#xff0c;那么响应就会比较慢&#xff0c;可以通过设置HTTP响应压缩来提高响应&#xff0c;如果前端改动少&#xff0c;那么就不需要启动这个响应压缩。 目的&#xff1a;为了提高HTTP响应数据在网络上的传输效率。▲ 设置如…

R语言常用数学函数

目录 1. - * / ^ 2.%/%和%% 3.ceiling,floor,round 4.signif,trunc,zapsamll 5.max,min,mean,pmax,pmin 6.range和sum 7.prod 8.cumsum,cumprod,cummax,cummin 9.sort 10. approx 11.approx fun 12.diff 13.sign 14.var和sd 15.median 16.IQR 17.ave 18.five…