Javascript基础(二)

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) 方括号: 用于查找某个范围内的字符
[abc] :
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), 仅仅表示一个死链接。

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

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

相关文章

网页字体设置你了解吗?

以前做项目的时候就依葫芦画瓢的设置 { font-family:arial,”microsoft yahei”,simsun,sans-self; } 等类似的字体&#xff0c;然而当更多的设备和系统出现后&#xff0c;以前这样的设置已不能满足网页在各设备上的显示需求。 就拿最简单的宋体(simsun)来说吧&#xff0c;在Wi…

SpringMVC redirect中文乱码问题

在使用"redirect:xxx.do?param中文"时会出现乱码问题&#xff0c;解决方案如下&#xff1a; 使用model.addAttribute来替代直接拼接参数。如下&#xff1a; RequestMapping("t") public String t(String param, Model model) {model.addAttribute("p…

设计模式笔记(7)---适配器模式(结构型)

Gof定义 将一个类的接口转换成客户所希望的另一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 动机 在软件系统中&#xff0c;由于应用环境的变化&#xff0c;常常要将“一些现存的对象”放在心的环境中应用&#xff0c;但是新环境要求的接口…

js RegExp正则表达式常见用例

js RegExp正则表达式常见用例判断输入是否为数字、字母、下划线组成判断字符串是否全部为字母判断字符串是否全部为数字判断是否带有小数判断是否中文名称组成判断手机号判断身份证判断验证码判断邮件地址是否合法判断是否是emoji表情获取字符长度&#xff0c;中文算2&#xff…

软件设计模式之适配器模式(JAVA)

什么是适配器模式&#xff1f; 在计算机编程中&#xff0c;适配器模式&#xff08;有时候也称包装样式或者包装&#xff09;将一个类的接口适配成用户所期待的。适配器能将因为接口不兼容而不能在一起工作的类工作在一起&#xff0c;做法是将类自己的接口包裹在一个已存在的类中…

表达式与运算符

表达式与运算符 表达式 与数学中的定义相似&#xff0c;表达式是指具有一定的值的、用运算符把常数和变量连接起来的代数式。一个表达式可以只包含一个常数或一个变量。运算符可以是四则运算符、关系运算符、位运算符、逻辑运算符、复合运算符。下表将这些运算符从高优先级到低…

Javascript 调试技巧

Javascript 调试技巧 在代码中寻找错误 1&#xff09;alert 方法&#xff1a; 弹框提示 2&#xff09;console 方法 在调试窗口上打印 JavaScript 值 3&#xff09;断点调试 在浏览器开发者工具中为JS代码添加断点&#xff0c;让JS执行到某一特定位置停住&#xff0c;方便…

[POJ2157]Maze(DFS)

题目链接&#xff1a;http://poj.org/problem?id2157 题意&#xff1a;给一张地图&#xff0c;地图里有门和钥匙&#xff0c;想要开门必须集齐所有钥匙。给定起点和终点&#xff0c;问从起点出发能否到达终点。 爆搜floodfill&#xff0c;每填一次考虑是否到达终点&#xff0c…

WPF程序将DLL嵌入到EXE的两种方法

2019独角兽企业重金招聘Python工程师标准>>> WPF程序将DLL嵌入到EXE的两种方法 这一篇可以看作是《Visual Studio 版本转换工具WPF版开源了》的续&#xff0c;关于《Visual Studio 版本转换工具WPF版开源了》可以参看地下地址&#xff08;两篇是一样的&#xff09;&…

华中地区高校第七届ACM程序设计大赛——之字形矩阵【2012年5月27日】

题意&#xff1a;输入a b Right 或 a b Down ,根据输入输出之字形路径的矩阵。 1 #include <stdio.h>2 int xx[4]{0,1,-1,1},yy[4]{1,0,1,-1};3 int map[100][100],col,row,x,y,dir,steps,idx;4 char sel[10];5 void nextdir()6 {7 switch(dir)8 {9 case 0: …

Javascript 常见使用误区

Javascript常见使用误区 1&#xff09;比较运算符&#xff1a; var x 0; if (x 10) // true if (x 0) // falsevar x 10; var y "10"; if (x y) // true if (x y) // false 恒等计算符&#xff0c;同时检查表达式的值与类型var x 10; switch(x) { //执行ca…

内存泄漏和内存溢出的优化

内存泄漏&#xff1a; 对象在内存heap堆中中分配的空间&#xff0c; 当不再使用或没有引用指向的情况下&#xff0c; 仍不能被GC正常回收的情况。 多数出现在不合理的编码情况下&#xff0c; 比如在Activity中注册了一个广播接收器&#xff0c; 但是在页面关闭的时候进行unRegi…

使用ftp搭建yum源问题解决

wget 无法连接的情况 关闭linux 防火墙 1) 重启后生效 开启&#xff1a; chkconfig iptables on 关闭&#xff1a; chkconfig iptables off 2) 即时生效&#xff0c;重启后失效 开启&#xff1a; service iptables start 关闭&#xff1a; service iptables stop 需要说明的是对…

oracle文件

1、控制文件和日志文件 控制文件&#xff08;Control File&#xff09;是一个很小的二进制文件&#xff0c;用于描述和维护数据库的物理结构。在Oracle数据库中&#xff0c;控制文件相当重要&#xff0c;它存放有数据库中数据文件和日志文件的信息。Oracle数据库在启动时需要访…

Javascript this关键字 指向详解

Javascript this关键字 指向详解 面向对象语言中 this 表示当前对象的一个引用。在 JavaScript 中 this 不是固定不变的&#xff0c;它会随着执行环境的改变而改变。 1&#xff09; 单独使用&#xff0c;this 表示全局对象。 <script type"text/javascript">…

storyboard隐藏iphone软键盘

xcode 4.3.2 storyboard ** 点击软键盘的return键隐藏软键盘 .h文件定义IBAction -(IBAction)textFieldReturn:(id)sender; .m文件实现 -(IBAction)textFieldReturn:(id)sender{[sender resignFirstResponder];//关键代码 } storyboard中&#xff0c;选中文本框&#xff0c;查…

常用命令-tar 加密

2019独角兽企业重金招聘Python工程师标准>>> 在当前目录下有一个pma目录的文件夹: 1、使用tar对文件压缩加密&#xff1a; # tar -zcvf - pma|openssl des3 -salt -k password | dd ofpma.des3 完成将得到一个pma.des3的打包文件&#xff0c;用你设置的密码替换pas…

ORM SQLAlchemy 简介

对象关系映射&#xff08;Object Relational Mapping&#xff0c;简称ORM使用DB-API访问数据库&#xff0c;需要懂 SQL 语言&#xff0c;能够写 SQL 语句&#xff0c;如果不想懂 SQL&#xff0c;又想使用关系型数据库&#xff0c;可以使用 ORM,一个 ORM , 它的一端连着 Databas…

Javascript let和const

Javascript let和const 在 ES6 之前&#xff0c;JavaScript 只有两种作用域&#xff1a; 全局变量 &#xff1a; 在函数外声明的变量作用域是全局的 局部变量&#xff08;函数变量&#xff09;&#xff1a;在函数内声明的变量作用域是局部的 <script type"text/jav…

Javascript JSON格式

Javascript JSON格式 1&#xff09;什么是JSON&#xff08;JavaScript Object Notation&#xff09;&#xff1f; 是一种轻量级的数据交换格式 是独立的语言 2&#xff09;JSON 语法规则 数据为 键/值 对 数据由逗号分隔 大括号保存对象 方括号保存数组 JSON 对象&#xff…