JavaScript入门介绍 1 2021/02/27

一、JavaScript简介一

1.1 javascript 简介

  • JavaScript是Web页面中的一种脚本编程语言,可用于Web系统的客户端和服务器端编程
  • 前身叫做LiveScript,是Netscape公司开发的脚本语言。在Sun公司推出Java语言后, Netscape公司和Sun公司于1995年一起重新设计了LiveScript,并将其更名为JavaScript。

1.2 JavaScript 嵌入

  1. 在 Html 中嵌入 Html

    • 在HTML中通过**<script>… </ script>**引入JavaScript代码

    • 当浏览器读取到**<script>**标记时,解释执行其中的脚本。

  2. script的两个属性

    • type=“text/javascript”
    • src=“url”

1.3 JavaScript 编程基础 & 流程控制语句

  1. **常量:**数值型(整数、浮点数)、字符串和布尔型

  2. 变量

    1. 使用变量 **“var”**声明变量。
    2. JavaScript是弱类型语言,莫名其妙可能就从 int 变成了 string,这里给出下面的类型转换函数
      1. **Number(mix)函数,可以将任意类型的参数mix转换为数值类型。**其规则为:
        • 如果是布尔值,true和false分别被转换为1和0
        • 如果是数字值,返回本身。
        • 如果是null,返回0
        • 如果是undefined,返回NaN
        • 如果是字符串,遵循以下规则:
          a.如果字符串中只包含数字,则将其转换为十进制(忽略前导0)
          b.如果字符串中包含有效的浮点格式,将其转换为浮点数值(忽略前导0)
          c.如果是空字符串,将其转换为0
          d.如果字符串中包含非以上格式,则将其转换为NaN
        • 如果是对象,则调用对象的valueOf()方法,然后依据前面的规则转换返回的值。如果转换的结果是NaN,则调用对象的toString()方法,再次依照前面的规则转换返回的字符串值。
      2. parseFloat(string)函数,将字符串转换为浮点数类型的数值。
        • 它的规则与parseInt基本相同,但也有点区别:字符串中第一个小数点符号是有效的,
        • 另外parseFloat会忽略所有前导0,如果字符串包含一个可解析为整数的数,则返回整数值而不是浮点数值。
      3. toString(radix)方法
        • 除undefined和null之外的所有类型的值都具有toString()方法,其作用是返回对象的字符串表示。
      4. parseInt(string, radix)函数,将字符串转换为整数类型的数值。它也有一定的规则:
        • 忽略字符串前面的空格,直至找到第一个非空字符
        • 如果第一个字符不是数字符号或者负号,返回NaN
        • 如果第一个字符是数字,则继续解析直至字符串解析完毕或者遇到一个非数字符号为止
        • 如果上步解析的结果以0开头,则将其当作八进制来解析;如果以x开头,则将其当作十六进制来解析
        • 如果指定radix参数,则以radix为基数进行解析
      5. Boolean(mix)函数,将任何类型的值转换为布尔值。
  3. 运算符

    • 算术运算符:+、-、*、/、%(取余数)、++、–

    • 关系运算符:<、<=、>、>=、= =、!=

    • 逻辑运算符:&&、||、!

    • 字符串运算符:+(连接) 这个在java中也是有的

    • 赋值运算符:=

    • 条件运算符:condition?true_result:false_result

  4. 流程控制语句

    1. 顺序结构
    2. 分支结构
      • if — else —
      • switch
    3. 循环结构
      • for
      • while
      • do while

1.4 JavaScript 对话框

这里我们介绍三个最常用的对话框

  1. alert:警告对话框

  2. confirm:确认对话框,返回一个bool值

  3. prompt:输入对话框

示例:

​ 询问用户是否学习过Java语言,如果学习过,输入考试分数,对分数进行评价;如果没有学习过,提示需要先学习Java才能继续。

代码:

<!--Java-->
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>JavaTest</title>
</head>
<script type="text/javascript">var learned = confirm("have you ever learned java?");if (learned) {var score = prompt("what's you score?");score = Number(score);var res = "";switch (score / 10) {case 10:res = "all right!"; break;case 9:res = "A";  break;case 8:res = "B";  break;case 7:res = "C"; break;case 6:res = "D";  break;default:res = "E";}alert("The res:" + res + "!");} else {alert("sorry, without the data we can't conclude!");}
</script>
<body></body>
</html>

1.5 JavaScript 对象

java的对象分为内置对象,自定义对象,和浏览器对象,下面我们介绍一下javaScript的内置对象

  • 在JavaScript中,可通过new运算符来创建对象,即**变量名= new 对象名() **
  • 将新创建的对象赋予一个变量后,就可以通过这个变量访问对象的属性和方法

下面我们介绍几个常见的对象

  • Date对象:该对象主要提供获取和设置日期和时间的方法。例如,getFullYear() 、getMonth() 、getDate () 、getDay ()

  • String对象:该对象提供了对字符串进行处理的属性和方法。例如:length()、toLowerCase()、toUpperCase()、substr()

  • Array对象:在JavaScript中,使用内置对象Array创建数组对象。格式为:var arrayname=new Array(arraysize)

注意这个对象的声明依旧是 使用 var,只不过new 后面跟了类型

下面我们给出一个JavaScript内置对象的示例

<!--Java-->
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>JavaTest</title>
</head>
<script type="text/javascript">var date = new Date();var curDay = date.getDay();     <!--获取当前星期-->alert("Day" + date.getDay());           <!--获取当前星期-->alert("Year" + date.getFullYear());      <!--获取当前年份-->alert("Month" + date.getMonth());alert("Date" + date.getDate());alert("Hours" + date.getHours());         <!--获取当前时间--></script>
<body></body>
</html>

下面我们给出具体官方的自定义对象方法的介绍:

  • Date对象

  • 其他对象就是Date对象的旁边,这里就不给了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TviLtMZY-1614774645823)(E:\markdownTypora\typora_intall\文档\image-20210227184515180.png)]

1.6 事件驱动

  1. 事件驱动的定义

    用户操作事件(操作鼠标或按键的动作)或系统操作事件(如载入页面等)引起一连串程序动作的执行方式,称为事件驱动。

  2. 事件处理的定义

    为了响应某个事件而进行的处理过程,称为事件处理。

  3. 事件处理程序的定义

    对事件进行处理的过程或函数,称为事件处理程序。

JavaScript使用事件的两种方法----HTML标记或使用JavaScript语句

  • 许多HTML标记允许加上以事件名为名的属性,
    • 如在按钮标记中加上onclick事件属性,并为该属性给出值。
    • 例如,设计一个表单,放入两个按钮,单击它们时将显示内容。
  • 使用事件的另一种方法是使用JavaScript语句:对象.事件=函数名。

下面我们给出一个示例:

要求用户输入圆 的半径,计算并输出圆的面积

主要是使用了第一种的方法。

<!--Java-->
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>JavaTest</title>
</head>
<script type="text/javascript">function calArea() {var radius = prompt("请输入圆的半径,进行计算");radius = Number(radius);if (radius < 0) {alert("数据范围错误");} else {alert("S=" + (3.14 * radius * radius));}}
</script>
<body>
<input type="button" name="btn" value="点击开始进行圆的面积" onclick="calArea()" />
</body>
</html>

完成数据的累加和计算

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>累加和计算</title>
</head>
<script>function sum() {var n = prompt("请输入一个正整数n,计算1~n累加和");if (n < 1) {     <!--数据输入有误-->var myContinue = confirm("数据输入有误,是否继续输入正确数据");if (myContinue) {sum();      <!--继续递归调用-->}} else {<!--必须要强制类型转换-->n = Number(n);var res = (n + 1) * n / 2;alert("1+2+...+" + n + "结果=" + res);}}
</script>
<body>
<input type="button" name="btn1" value="开始计算累加和" onclick="sum()" />
</body>
</html>

二、JavaScript简介二

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

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

相关文章

css权重值

CSS权重指的是样式的优先级&#xff0c;有两条或多条样式作用于一个元素&#xff0c;权重高的那条样式对元素起作用,权重相同的&#xff0c;后写的样式会覆盖前面写的样式。 权重的等级 可以把样式的应用方式分为几个等级&#xff0c;按照等级来计算权重 !important&#xf…

LeetCode 848. 字母移位(前缀和+取模)

文章目录1. 题目2. 解题1. 题目 有一个由小写字母组成的字符串 S&#xff0c;和一个整数数组 shifts。 我们将字母表中的下一个字母称为原字母的 移位&#xff08;由于字母表是环绕的&#xff0c; ‘z’ 将会变成 ‘a’&#xff09;。 例如&#xff0c;shift(a) b&#xff…

jsp:setProperty

类声明&#xff1a; package test; public class Student { private int age; public int getAge() { return age; } public void setAge(int age) { this.age age; } } jsp代码&#xff1a; <jsp:useBean id"student"…

第一章、OS引论1

1.1 操作系统的目标和作用 1.1.1 操作系统的目标 计算机上安装操作系统&#xff0c;主要目标是&#xff1a;方便性、有效性、可扩充性和开放性。 方便性&#xff1a;方便用户&#xff0c;使计算机变得易学易用有效性&#xff1a;提高系统资源(资源指CPU(处理机),存储器,文件(…

常用图片格式介绍(了解

常用图片格式 图片是网页制作中很重要的素材&#xff0c;图片有不同的格式&#xff0c;每种格式都有自己的特性&#xff0c;了解这些特效&#xff0c;可以方便我们在制作网页时选取适合的图片格式&#xff0c;图片格式及特性如下&#xff1a; 1、psd photoshop的专用格式。 优点…

LeetCode 858. 镜面反射(最小公倍数/最大公约数)

文章目录1. 题目2. 解题1. 题目 有一个特殊的正方形房间&#xff0c;每面墙上都有一面镜子。 除西南角以外&#xff0c;每个角落都放有一个接受器&#xff0c;编号为 0&#xff0c; 1&#xff0c;以及 2。 正方形房间的墙壁长度为 p&#xff0c;一束激光从西南角射出&#xf…

SharePoint 2013的100个新功能之搜索(一)

一&#xff1a;新的搜索架构 SharePoint 2013中将最好的两个搜索引擎“SharePoint搜索”和“SharePoint FAST搜索服务”整合到了一个搜索引擎&#xff0c;提供更大的冗余和更好的扩展性。更多信息 二:持续的爬网 一个新的爬网选项“持续爬网”被引入到了搜索的爬网计划表中&…

Ubuntu从零安装 Hadoop And Spark

安装 linux 以Ubuntu为例 选择镜像&#xff0c;虚拟机安装 虚拟机下&#xff0c;直接安装镜像即可&#xff0c;选择好自己的配置&#xff0c;一定要注意路径名选好&#xff0c;而且和你虚拟机的名称匹配&#xff0c;这里我的镜像是 ubuntu-20.04.2.0-desktop-amd64.iso 切换…

04.卷积神经网络 W2.深度卷积网络:实例探究

文章目录1. 为什么要进行实例探究2. 经典网络3. 残差网络 ResNets4. 残差网络为什么有用5. 网络中的网络 以及 11 卷积6. 谷歌 Inception 网络简介7. Inception 网络8. 使用开源的实现方案9. 迁移学习10. 数据增强 Data augmentation11. 计算机视觉现状作业参考&#xff1a; 吴…

transition动画与transform变换(了解

1、transition-property 设置过渡的属性&#xff0c;比如&#xff1a;width height background-color2、transition-duration 设置过渡的时间&#xff0c;比如&#xff1a;1s 500ms3、transition-timing-function 设置过渡的运动方式&#xff0c;常用有 linear(匀速)|ease(缓冲…

mysql游标循环的使用

CREATE PROCEDURE test.new_procedure () BEGIN -- 需要定义接收游标数据的变量 DECLARE a CHAR(16);-- 游标DECLARE cur CURSOR FOR SELECT i FROM test.t;-- 遍历数据结束标志DECLARE done INT DEFAULT FALSE;-- 将结束标志绑定到游标DECLARE CONTINUE HANDLER FOR NOT FOUND…

动态规划之最长上升子序列模型

动态规划分为很多模型&#xff0c;比如说数字三角形模型&#xff0c;最长上升子序列模型&#xff0c;背包模型&#xff0c;状态机模型&#xff0c;状态压缩&#xff0c;区间dp&#xff0c;树形dp等等 下面&#xff0c;我就Acwing提高课中&#xff0c;最长上升子序列模型进行了整…

LeetCode 900. RLE 迭代器(模拟/二分查找)

文章目录1. 题目2. 解题2.1 直接模拟2.2 二分查找1. 题目 编写一个遍历游程编码序列的迭代器。 迭代器由 RLEIterator(int[] A) 初始化&#xff0c;其中 A 是某个序列的游程编码。 更具体地&#xff0c;对于所有偶数 i&#xff0c;A[i] 告诉我们在序列中重复非负整数值 A[i …

html-css练习题(系统提示)

代码赏析&#xff1a;<!DOCTYPE html><html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><meta http-equiv"X-UA-Compatible&qu…

notification

A页面 //向列表页面B发送一个通知 postShopZanCountData NSMutableDictionary *dic[[NSMutableDictionaryalloc] init]; [[NSNotificationCenterdefaultCenter] postNotificationName:"postData"object:niluserInfo:dic]; B 页面 [[NSNotificationCenterdefaultCente…

机器学习算法--线性回归分析(单元和多元)

关键词 分类模型、回归模型 存在序的离散属性、不存在序的离散属性 有监督的机器学习 回归的分类&#xff08;输入变量数目&#xff0c;输入变量和输出变量的关系&#xff09; 已知数据集&#xff0c;未知参数 均方误差最小化&#xff0c;最小二乘法 一元线性回归 多元线…

LeetCode 740. 删除与获得点数(排序+动态规划)

文章目录1. 题目2. 解题1. 题目 给定一个整数数组 nums &#xff0c;你可以对它进行一些操作。 每次操作中&#xff0c;选择任意一个 nums[i] &#xff0c;删除它并获得 nums[i] 的点数。之后&#xff0c;你必须删除每个等于 nums[i] - 1 或 nums[i] 1 的元素。 开始你拥有…

多线程编程-条件变量

转载自&#xff1a;http://blog.chinaunix.net/uid-21411227-id-1826890.html 1&#xff0e;引言&#xff1a; 条件变量是一种同步机制&#xff0c;允许线程挂起&#xff0c;直到共享数据上的某些条件得到满足。条件变量上的基本操作有&#xff1a;触发条件(当条件变为 true 时…

html-css练习题 (注册表单)

代码赏析&#xff1a; <!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <meta http-equiv"X-UA-Co…

虚拟机安装 服务器 Ubuntu Server20.04.2

虚拟机安装 服务器 Ubuntu Server20.04.2 下载地址 VMware创建新的虚拟机 首选选择典型 稍后安装操作系统&#xff0c;并点击下一步 选择Linux Ubuntu64位 命名虚拟机 指定虚拟机的容量 点击确定之后开启虚拟机 选择自己下载的镜像文件 打开虚拟机进行配置 单击…