Javascript基础(二)

  • 事件:
  • 条件语句
  • 类型转换
  • 正则表达式regexp
  • 错误抛出
  • void

事件:

是发生在HTML元素上的行为,可以是浏览器行为,可以是用户行为

a) html 元素添加事件属性:

<p οnclick= 'alert('hello')'>点击提示</p>
<button οnclick= 'Date()'>点击查看现在时间</button>
<a onclick="handleEvent()">点我</a>

b) 常用的HTML事件:

onclick: 用户点击html元素

onchange: html元素改变

onmouseover: 用户鼠标在html元素上移动

onmouseout: 用户鼠标从html元素上移开

onkeydown: 用户按下键盘键

onload: 浏览器已完成页面加载

条件语句

a) if...else:用于基于不同的条件来执行不同的动作

if () {} else if () {} else if () {} else {}

b) switch :用于基于不同的条件来执行不同的动作

switch(n){case: 1:  //代码块break;case: 2: //代码块break;default: //代码块
}
// 使用 default 关键词来规定匹配不存在时做的事情

c) for循环:一遍又一遍地运行相同的代码,并且每次的值都不同,那么使用循环是很方便的

for (语句 1; 语句 2; 语句 3)
{被执行的代码块
}
// 语句 1 (代码块)开始前执行
// 语句 2 定义运行循环(代码块)的条件
// 语句 3 在循环(代码块)已被执行之后执行
for (var i=0;i<cars.length;i++)
{ document.write(cars[i] + "<br>");
}

d) for/in循环:循环遍历对象的属性

var person={fname:"John",lname:"Doe",age:25};
for (x in person)  // x 为属性名
{txt=txt + person[x];
}

e) while循环:在指定条件为真时循环执行代码块

while (条件)
{需要执行的代码
}

f) do/while循环: 该循环会在检查条件是否为真之前执行一次代码块,然后如果条件为真的话,就会重复这个循环

do
{需要执行的代码
}
while (条件);

g) break 和 continue 语句

break 语句用于跳出循环。

continue 用于跳过循环中的一个迭代。

类型转换

a) 转换为字符串String() 、 toString()、自动转换(与字符串连接时)

let a = 1;
console.log( String(a) );
console.log( a.toString() );
console.log( a + '' );// 当你尝试输出一个对象或一个变量时 JavaScript 会自动调用变量的 toString() 方法
document.getElementById("demo").innerHTML = myVar;
myVar = 123             // toString 转换为 "123"
myVar = true            // toString 转换为 "true"
myVar = false           // toString 转换为 "false"
myVar = {name:"Fjohn"}  // toString 转换为 "[object Object]"
myVar = [1,2,3,4]       // toString 转换为 "1,2,3,4"
myVar = new Date()      // toString 转换为 "Fri Jul 18 2014 09:08:55 GMT+0200"

b) 转换为数字Number()、parseFloat()浮点数、parseInt()整数、一元运算符+、自动转换(字符串与数字进行减乘除时)

Number("3.14")    // 返回 3.14
Number(" ")       // 返回 0
Number("")        // 返回 0
Number(false)     // 返回 0
Number(true)      // 返回 1
Number("99 88")   // 返回 NaN
d = new Date();
Number(d)          // 返回 1404568027739

一元运算符+ :可将字符串转为数字

一元运算符+, 可将字符串转为数字
var y = "5";      // y 是一个字符串
var x = + y;      // x 是一个数字( 5)var y = "John";   // y 是一个字符串
var x = + y;      // x 是一个数字 (NaN)
字符串和数字相加,会变成字符串
"5" + 1     // String 返回 "51"      1 转换为 "1"
"5" - 1     // Number 返回 4         "5" 转换为 5
"5" * 1  // Number 返回55 + null    // Number 返回 5         null 转换为 0
"5" + null  // String 返回"5null"   null 转换为 "null"

正则表达式regexp

是由一个字符序列形成的搜索模式。搜索模式可用于文本搜索和文本替换。

语法:
/正则表达式主体/修饰符(可选)

eg:
var patt = /runoob/i (i 搜索不区分大小写)

a) 修饰符: 用于执行区分大小写和全局匹配

b) 方括号: 用于查找某个范围内的字符

c) 元字符: 拥有特殊含义的字符

d) :量词


错误抛出

try 语句测试代码块的错误。

catch 语句处理错误。

finally 语句在 try 和 catch 语句之后,无论是否有触发异常,该语句都会执行。

throw 语句创建自定义错误。

try {...    //异常的抛出,定义在执行时进行错误测试的代码块
} catch(e) {...    //异常的捕获与处理,当 try 代码块发生错误时,所执行的代码块
} finally {...    //结束处理
}
 var message, x;message = document.getElementById("message");message.innerHTML = "";x = document.getElementById("demo").value;try { if(x == "")  throw "值为空";if(isNaN(x)) throw "不是数字";x = Number(x);if(x < 5)    throw "太小";if(x > 10)   throw "太大";}catch(err) {message.innerHTML = "错误: " + err;}

void

a) javascript:void(0): 指定要计算一个表达式但是不返回值

<a href="javascript:void(0)">单击此处什么也不会发生</a>

b) href="#"与href="javascript:void(0)"的区别:

包含了一个位置信息,默认的锚是#是网页的上端,在页面很长的时候会使用 # 来定位页面的具体位置,格式为:# + id。
而javascript:void(0), 仅仅表示一个死链接。

Javascript基础(二)相关推荐

  1. 【JavaScript基础-二维数组】JavaScript修改二维数组的某个元素时,其上下元素也受到影响

    JavaScript修改二维数组的某个元素时,其上下元素也受到影响 发布:2021年8月15日18:54:56 前言 在研究背包问题时,一开始往往会用二维数组的形式来描述,这样会便于理解.但是,我在操 ...

  2. JavaScript基础二

    object对象 看个栗子 对象是带有属性和方法的特殊数据类型. object结构类似于python中的字典: var cat = {"name": "Whiskers& ...

  3. 网页开发基础,HTML、CSS技术、JavaScript基础

    一.学习目标 1.HTML技术 2.CSS技术 3.JavaScript基础 二.重要知识点 1.HTML技术 超文本标记语言(英语:HyperText Markup Language,简称:HTML ...

  4. HTML5学习笔记 —— JavaScript基础知识

    HTML5学习笔记 -- JavaScript基础知识 标签: html5javascriptweb前端 2017-05-11 21:51 883人阅读 评论(0) 收藏 举报 分类: JavaScr ...

  5. Javascript基础回顾 之(二) 作用域

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  6. JavaScript语言基础(二)

    一.之前介绍了JavaScript语言基础的关键字.标识符.常用的数据类型,文章地址:JavaScript语言基础(一) ,下面来介绍JavaScript基础中的常量和变量. 1.常量:当程序运行时, ...

  7. JavaScript 基础知识 - DOM篇(二)

    7. 节点操作 7.1 节点的属性 节点分类: 标签节点 文本节点 属性节点 注释节点 节点常用的属性: nodeType:节点的类型 nodeName:节点名称 nodeValue:节点值 常见的节 ...

  8. JavaScript 基础知识 - 入门篇(二)

    11. 函数 11.1 函数的基础知识 为什么会有函数? 在写代码的时候,有一些常用的代码需要书写很多次,如果直接复制粘贴的话,会造成大量的代码冗余: 函数可以封装一段重复的javascript代码, ...

  9. JS学习笔记二——JavaScript 基础知识

    JavaScript 基础知识 一.JavaScript 变量 二.JavaScript 的输出 三.JavaScript 运算符 四.结语 一.JavaScript 变量 变量是指在程序运行过程中, ...

最新文章

  1. 【人脸表情识别】不得不读的重要论文推荐(2015-2018篇)
  2. 【笔记】python os的使用 文件批量重命名 批量移动文件 将png转jpg代码
  3. Swift之深入解析“类”的底层原理
  4. 通过命令行新建qt项目,并编译打包
  5. java 取栈顶元素_java集合系列(7)Stack
  6. dubbo protocol port 消费者端_Dubbo 优雅停机演进之路
  7. 税控服务器红字信息表流程,跨月发票红冲(金税盘、税控盘)操作流程.docx
  8. 80% 应聘者都不及格的 JS 面试题
  9. LaTeX的下载和使用(TexLive + TexStudio)
  10. html+js的lrc歌词同步播放器
  11. SQL注入(基于 tryhackme 的讲解)
  12. STM8 时钟寄存器
  13. xftp上传文件状态错误解决方法
  14. 【闲谈】应聘时要问HR的7个问题
  15. ethz的多传感器融合算法msf编译与安装
  16. axios 美[æk‘sioʊz]
  17. 跨平台.NET Core--微软开源方向
  18. java调用espeak_espeak-example Java for windows文本转语音,用 引擎 Other systems 其他 244万源代码下载- www.pudn.com...
  19. 淘宝商品评价api接口(app、h5端),淘宝评论视频API接口,淘宝评论API接口
  20. 郝健: Linux内存管理学习笔记-第4节课

热门文章

  1. Apache下PHP Loaded Configuration File None 解决方法
  2. linux 文件按照大小排列
  3. 数据旋转及DB2递归的应用
  4. 分享SharpZipLip使用代码
  5. 基于plotly数据可视化_[Plotly + Datashader]可视化大型地理空间数据集
  6. leetcode1091. 二进制矩阵中的最短路径(bfs)
  7. ux和ui_阅读10个UI / UX设计系统所获得的经验教训
  8. draft.js_如何使用快捷方式在Draft.js中创建有序列表和无序列表
  9. 使用一些我喜欢的东西开始使用ES6
  10. 2pc 3pc_在1990年代如何宣传PC