鉴于目前Javascript如此火爆,再加上近日微信宣布的“小程序”功能,可想以后的前端工程师是有多么的热门了
一、JS基础语法:
- 变量的声明:
- 语法:``var myname;``
- 变量赋值:
- 我觉得这里没啥好说的了。几乎所有编程语言的赋值都差不多…
- 表达式:
- 算术表达式;
- 字符串表达式;
- 关系表达式(比较);
- 逻辑表达式。
- 运算符:
- 赋值运算符:
- ``=``
- 支持复合赋值运算符,包含但不限于``+=, -=, /=``
2. 算术运算符:
- `+, -, *, /, %, ++(自加), --(自减)`
3. 字符串运算符:
- `+, +=`
4. 比较运算符:
- `==, !=, ===(比较值及类型), !==(比较值及类型), <, <=, >, >=`
5. 逻辑运算符:
- `&&(与运算), ||(或运算), !(取反)`
6. 逐位运算符:
7. 特殊运算符:
1. new 运算符,创建对象(实例)
- 语法:``对象名称 = new 对象类型(参数)``
2. this 运算符,表示当前对象
- 语法:``this.属性``
3. 条件运算符:
- 语法:``<条件表达式> ? 第一个值:第二个值``
- 说明:当条件表达式为真时,执行第一个值,否则执行第二个值,如果有学过其他静态语言的同学,就回很熟悉了^_^
8. 运算符执行的优选顺序:
- 算数>比较>逻辑>赋值
二、数组
- 创建数组:
- ``var myarray = new Array()``
- 数组赋值:
- `var myarray = new Array(66, 88, 99);`
- `var myarray = [66, 88, 99];`
- 向数组增加一个新元素
- ```javascript
myarray[5] = 22;
//原数组长为4
1 2 3 4 5 6 7 8 9 10
| 4. 二维数组: - 定义方法一: ```javascript var myarr = new Array(); for(var i = 0; i<2; i++){ myarr[i] = new Array(); for(var j = 0; j<i; j++){ myarr[i][j] = i+j; } }
|
- 定义方法二:
1
| var Myarr = [[0, 1, 2], [1, 2, 3]];
|
三、事件响应
- 主要事件:
事件 |
说明 |
onclick |
鼠标单机事件 |
onmouseover |
鼠标经过事件 |
onmouseout |
鼠标移开事件 |
onchange |
文本框内容改变事件 |
onselect |
文本框内容被选中事件 |
onfocus |
光标聚焦 |
onblur |
光标离开 |
onload |
网页导入/加载事件 |
onunload |
关闭网页/卸载事件 |
- 获取元素的值和获取方法:
- 赋值:`document.getElementById("is").value=1;`
- 取值:`var=document.getElementById("id").value;`
- 使用 parseInt() 函数可以解析一个字符串,并返回一个整数。
四、JavaScript内置对象
- 对象:
- JS中所有事物都是对象;
- 每个对象都带有属性方法
- Date 日期对象
- 语法:`var Udate = new Date();`
- 注意:默认初始值为当前时间(当前电脑系统的时间)。
- 访问方法语法:<日期对象>.<方法>
- Date对象中处理时间和日期的方法:
方法名称 | 功能描述 |
---|
get/setDate() | 返回/设置日期 |
get/setFullYear() | 返回/设置年份,用四位数表示 | get/setMonth() | 返回/设置月份,0表示一月;以此类推 |
get/setHours() | 返回/设置小时,24小时制 |
get/setMinutes() | 返回/设置分钟数 |
get/setSeconds() | 返回/设置秒钟数 |
get/setTime() | 返回/设置时间内(毫秒为单位) |
- 返回/设置年份方法:
- eg:
1 2 3 4
| mydate.getFullYear();
mydate.setFullYear();
|
- 返回/设置星期方法:
- eg:
- 返回/设置时间方法:
- **方法:**get/setTime();
- **注意:**
1. 一小时60分,一分60秒,一秒100毫秒;
2. 时间推迟1小时,就是``x.setTime(x.getTime()+60*60*100);``
- String字符串对象(类JAVA)
-
1 2 3
| x.length; x.toUpperCase(); x.toLowerCase();
|
- 返回指定位置的字符:
- **语法:**``stringObject.charAt(index)``
- **参数说明:**
- `index`:必需,表示字符串某个位置的数字,即字符在字符串中的下标。
- 返回指定字符串首次出现的位置
- **语法:**``stringObject.indexOf(substring,starpos)``
- **参数说明:**
1. ``substring``:必需,规定需检索的字符串值;
2. ``starpos``:可选的整数参数,规定在字符串开始检索的位置。它的合法取值是0到stringObject.length-1。如省略该z高数,则将字符串的首字符开始检索。
- 字符串分割split()
- **语法:**``stringObject.split(separator,limit)``
- **参数说明:**
1. `Separator`:必需。从该参数指定的地方分割stringObject;
2. `limit`:可选参数;分割的次数,如设置该参数,返回的子串不会多于这个参数指定的数组,如果无此参数为不限制次数
- 提取字符串substring()
- **功能:**用于提取字符串中介于两个指定下标之间的字符。
- **语法:**``stringObject.substring(starPos,stopPos)``
- **参数说明:**
1. `starPos`: 必需,一个非负的整数,开始的位置;
2. `stopPos`: 可选,一个非负的整数。结束的位置,如果省略此参数,那么返回的子串会一直到字符串对象的结尾。
- **注意:**
1. 返回的内容是从star开始(包含star位置的字符)到stop-1处的所有字符,其长度为stop减star
2. 如果参数star到stop相等,那么该方法返回的就是一个空串(即长度为0的字符串)
3. 如果star比stop大,那该方法在提取字符串之前会先交换这两个参数
- 提取指定数目的字符substr()
- **功能:**从字符串中提取从starPos位置开始的指定数目的字符串
- **语法:**``stringObject.substr(starPos,length)``
- **参数说明:**
1. ``starPos``:必需,要提取的子串起始位置。必需是数值。
2. `length`:可选,提取字符串子串的长度,如果省略,返回从`stringObject`的开始位置starPos到stringObject的结尾的字符
- **注意:**
- 如果参数starPos是负数,从字符串的尾部开始算起的位置,也就是说,-1指字符串最后一个字符,-2指倒数第二个字符,以此类推,如果starPos为负数且绝对值大于字符串长度,starPos为0.
- Math对象
- Math对象,提供数据的数学计算
- 使用Math的属性和方法:
1 2 3 4 5 6
| <script type="text/javascript"> var mypi=Math.PI; var myabs=Math.abs(-15); document.write(mypi); document.write(myabs); </script>
|