JavaScript是一种轻量级的编程语言,相信很多人在大学都学过,而且网上也有很多的资料,例如:菜鸟教程,绿叶学习网等等。这个在之后的工作中也会用到部分知识,所以这里大致介绍一下相关的内容。
1.数据类型
JavaScript的数据类型分为两种,基本数据类型和引用数据类型。基本数据类型包括字符串(String),数字(Number),布尔(Boolean),对空(Null),未定义(Undefined),Symbol。
引用数据类型:对象(Object),数组(Array),函数(Function)。对于学过编程语言的同学来说,这些数据类型应该都很熟悉了,这里就介绍一下引用类型里的对象(Object)。
对象(Object)由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔:
var person={firstname:"John", lastname:"Doe", id:5566};
上面例子中的对象 (person) 有三个属性:firstname、lastname 以及 id。
空格和折行无关紧要,声明可横跨多行((虽然在语法上不作要求,但在工作中代码的书写要按照要求的有利于自己调试,也有利于别人阅读))。
var person={
firstname : "John",
lastname : "Doe",
Id : 5566
};
对象属性有两种寻址方式:
name=person.lastname;
name=person["lastname"];
2.正则表达式
正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。
这里简单介绍常用的符号。
- i:匹配时忽略大小写
- g:查找所有匹配而非在找到第一个匹配后停止,即全局匹配。
- m:执行多行匹配
- ^ 表示匹配字符串的开始位置 (例外 用在中括号中[ ] 时,可以理解为取反,表示不匹配括号中字符串)
- $ 表示匹配字符串的结束位置
- \w 表示英文字母和数字 \W 非字母和数字
- . 表示匹配单个字符
- \s 匹配任意的空白字符 \S 匹配非空白字符
- \d 表示数字 \D 非数字
- \b 匹配单词的开始或者结束
- 表示匹配 零次到多次
- + 表示匹配 一次到多次 (至少有一次)
- ? 表示匹配零次或一次
- | 表示为或者,两项中取一项
- ( ) 小括号表示匹配括号中全部字符
- [ ] 中括号表示匹配括号中一个字符 范围描述 如[0-9 a-z A-Z]
- { } 大括号用于限定匹配次数 如 {n}表示匹配n个字符 {n,}表示至少匹配n个字符 {n,m}表示至少n,最多m
- \ 转义字符 如上基本符号匹配都需要转义字符 如 \* 表示匹配*号
正则表达式从左到右进行计算,并遵循优先级顺序,这与算术表达式非常类似。
相同优先级的从左到右进行运算,不同优先级的运算先高后低。下表从最高到最低说明了各种正则表达式运算符的优先级顺序:
运算符 | 描述 |
\ | 转义符 |
(), (?:), (?=), [] | 圆括号和方括号 |
*, +, ?, {n}, {n,}, {n,m} | 定位点和序列(即:位置和顺序) |
^, $, \任何元字符、任何字符 | 定位点和序列(即:位置和顺序) |
| | 替换,"或"操作,字符具有高于替换运算符的优先级,使得"m|food"匹配"m"或"food"。若要匹配"mood"或"food",请使用括号创建子表达式,从而产生"(m|f)ood"。 |
3.JSON
JSON是一种轻量级的数据交换格式。它主要用于存储和传输数据,在我们公司中关于数据的存储与传输大多数也是通过JSON的格式。例如:地铁里的各个站点,站列表,以及设备相关的属性等等。所以学会JSON是很有必要的。
数据交换格式方式分为三种,包括基本类型,数组类型,对象嵌套。
- 基本类型
{“键” : 值, “键” : “值”,…},以大括号开始,键的名称加上冒号,然后跟上对应的的值,若有其他键值对则以逗号进行分割。
{
"name": "张三",
"age": 18,
"sex": true
}
- 数组类型
[{“键” : 值, “键” : “值”},{“键” : 值, “键” : “值”},…],以中括号开始,其间的数据通过逗号进行分割。
[
{
"name": "张三",
"age": 18,
"sex": true
},
{
"name": "李四",
"age": 19,
"sex": false
}
]
- 对象嵌套
由上面两种类型,因为值的不固定性,可以演变出各种各样的嵌套类型。
{
"name": "teacher",
"computer": {
"CPU":"intel7,
"disk": "512G"
},
"students": [
{
"name": "张三",
"age": 18,
"sex": true
},
{
"name": "李四",
"age": 19,
"sex": false
}
]
}
JSON的值可以是数字(整数或浮点数),字符串(在双引号中),逻辑值(true 或 false),数组(在中括号中),对象(在大括号中),null。
JSON相关函数:parse和stringify。
JSON 通常用于与服务端交换数据,在接收服务器数据时一般是字符串。使用 JSON.parse() 方法将数据转换为 JavaScript 对象。而在向服务器发送数据时一般是字符串。
再使用 JSON.stringify() 方法将 JavaScript 对象转换为字符串。