JavaScript 输出(显示数据)
- 使用window.alert():弹出警告框
- 使用document.write():将方法内容写到HTML文档中
- 使用innerHTML写入到HTML元素
- 使用console.log():写入到浏览器的控制台
JavaScript 字符串
使用单引号或双引号来定义一个创建一个原始字符串 如:var name="Freecy;"
,也可以通过new关键字将字符串定义为一个对象:var name=new String("Freecy")
- 反斜杠(转义字符),将特殊的字符串转换为字符串字符:
代码 | 输出 | 代码 | 输出 |
---|---|---|---|
\’ | 单引号 | \" | 双引号 |
\\ | 反斜杠 | \n | 换行 |
\r | 回车 | \t | tab(制表符) |
\b | 退格 | \f | 换页符 |
- 字符串常用的方法/属性
方法 | 描述 |
---|---|
length | 返回字符串的长度 |
charAt() | 返回指定索引位置的字符 |
concat() | 连接两个或多个字符串,返回连接后的字符串 |
indexOf() | 返回字符串中指定字符第一次出现的位置 |
lastIndexOf() | 返回字符串中指定字符最后一次出现的位置 |
match() | 找到一个或者多个正则表达式的匹配 |
replace() | 替换与正则表达式匹配的子串 |
search() | 检索与正则表达式相匹配的值 |
split() | 把字符串根据指定的字符分割 |
toString() | 返回字符串对象值 |
JavaScript 变量类型
- 值类型(基本类型):字符串(string)、数字(Number)、布尔(Boolean)、空(Null)、未定义(Undefined)、Symbol
- 引用数据类型:对象(object)、数组(Array)、函数(Function)
- 通过将变量的值设置为null来清空变量
- 声明变量时,可以使用关键字new来声明其类型:
- 用typeof():返回变量的类型
- parseInt()/parserFloat():将字符串转换成整数/浮点数
var name=new String; var grade=new number; var sex=new Boolean; var person=new Object;
JavaScript 数组
- 数组的定义:
var arr=[12,5,8]
,用中括号定义数组 - 数组的属性: length,可以获取也可以设置(length设置快速清空数组)
- 数组的方法:
- 添加:push(),往数组末尾添加一个元素;unshift(),往数组头部添加一个元素
- 删除:pop(),删除尾部一个元素;shift()从数组头部删除一个元素
- splice方法
- splice(开始,长度,元素):先删除,后插入
- splice(开始,长度),删除指定位置指定长度的数组元素
- splice(开始,0,元素),从指定位置插入元素
sort(function(a,b){ return })
排序
JavaScript 函数
JavaScript的函数使用function关键字声明,使用方法和其他编程语言的函数的使用方法类似
```
function ShowMessage(info)
{
alert(info);
}
```
闭包: 子函数可以使用父函数的局部变量
JavaScript 正则表达式
JavaScript正则表达式:/正则表达式主体/修饰符(可选)
在JavaScript中,正则表达式通常用于两个字符串方法:search()和replace()。
var str="Visible Runoob!";
var n=str.search(/Runoob/i);
输出:6
正则表达式修饰符:
- i:执行对大小写不铭感的匹配
- g:执行全局匹配(查找所有匹配的字符而非在找到第一匹配后停止)
- m:执行多匹配
JavaScript 错误-throw、try和catch
try语句测试代码块的错误
catch语句处理错误
throw语句创建自定义错误
finally语句在try和catch语句之后,无论是否有触发异常,改语句都会执行
try{
...//异常抛出
}catch(e){
...//异常的捕获与处理
} finally{
...//结束处理
}
JavaScript this 关键字
面向对象语言中this表示对当前对象的一个引用,但是JavaScript中this不是固定不变的,它会随着执行环境的改变而改变
- 在方法中,this表示该方法所属的对象
- 如果单独使用,this表示全局对象
- 在函数中,this表示全局对象
- 在函数中,在严格模式下,this是未定义的(undefined)
- 在事件中,this表示接收事件的元素
- 类似call()和apply()方法可以将this引用到任何对象
JavaScript let和const
let:声明的变量只在let命令所在的代码块内有效(可以理解为局部变量)
const:声明一个只读常量,一旦声明,常量的值就不能更改
JavaScript JSON
JSON 语法规则:
- 数据为键/值对
- 数据由逗号分隔
- 大括号保存对象
- 方括号保存数组
var text = '{ "sites" : [' + '{ "name":"Runoob" , "url":"www.runoob.com" },' + '{ "name":"Google" , "url":"www.google.com" },' + '{ "name":"Taobao" , "url":"www.taobao.com" } ]}'; obj = JSON.parse(text);//将JSON字符串转JS对象 var str=JSON.stringify(obj);//将JS对象转JSON字符串
JSON.parse(): 将一个JSON字符串转换为JavaScript对象
JSON.stringify(): 将JavaScript值转换为JSON字符串
定时器
- setInterval(func,time):指定间隔time(毫秒)之后执行一次func函数,返回定时器对象
- clearInterval(obj):关闭定时器
- setTimeout(func,time):定时指定时间time(毫秒)之后执行一次func函数(只执行一次)
- clearTimeout关闭单次定时器