js的学习笔记——终篇

        鉴于目前Javascript如此火爆,再加上近日微信宣布的“小程序”功能,可想以后的前端工程师是有多么的热门了

一、JS基础语法:

  1. 变量的声明:
- 语法:``var myname;``
  1. 变量赋值:
- 我觉得这里没啥好说的了。几乎所有编程语言的赋值都差不多…
  1. 表达式:
  2. 算术表达式;
  3. 字符串表达式;
  4. 关系表达式(比较);
  5. 逻辑表达式。
  6. 运算符:
  7. 赋值运算符:
  - ``=``
  - 支持复合赋值运算符,包含但不限于``+=, -=, /=``
2. 算术运算符:
  - `+, -, *, /, %, ++(自加), --(自减)`
3. 字符串运算符:
  - `+,  +=`
4. 比较运算符:
  - `==, !=, ===(比较值及类型), !==(比较值及类型), <, <=, >, >=`
5. 逻辑运算符:
  - `&&(与运算), ||(或运算), !(取反)`
6. 逐位运算符:
7. 特殊运算符:
  1. new 运算符,创建对象(实例)
    - 语法:``对象名称 = new 对象类型(参数)``
  2. this 运算符,表示当前对象
    - 语法:``this.属性``
  3. 条件运算符:
    - 语法:``<条件表达式> ? 第一个值:第二个值``
    - 说明:当条件表达式为真时,执行第一个值,否则执行第二个值,如果有学过其他静态语言的同学,就回很熟悉了^_^
8. 运算符执行的优选顺序:
  - 算数>比较>逻辑>赋值

二、数组

  1. 创建数组:
- ``var myarray = new Array()``
  1. 数组赋值:
- `var myarray = new Array(66, 88, 99);`
- `var myarray = [66, 88, 99];`
  1. 向数组增加一个新元素
- ```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]];

三、事件响应

  1. 主要事件:
事件 说明
onclick 鼠标单机事件
onmouseover 鼠标经过事件
onmouseout 鼠标移开事件
onchange 文本框内容改变事件
onselect 文本框内容被选中事件
onfocus 光标聚焦
onblur 光标离开
onload 网页导入/加载事件
onunload 关闭网页/卸载事件
  1. 获取元素的值和获取方法:
- 赋值:`document.getElementById("is").value=1;`
- 取值:`var=document.getElementById("id").value;`
- 使用 parseInt() 函数可以解析一个字符串,并返回一个整数。

四、JavaScript内置对象

  1. 对象:
- JS中所有事物都是对象;
- 每个对象都带有属性方法
  1. Date 日期对象
- 语法:`var Udate = new Date();`
- 注意:默认初始值为当前时间(当前电脑系统的时间)。
- 访问方法语法:<日期对象>.<方法>
- Date对象中处理时间和日期的方法:
方法名称功能描述
get/setDate()返回/设置日期
get/setFullYear()返回/设置年份,用四位数表示
get/setMonth()返回/设置月份,0表示一月;以此类推
get/setHours()返回/设置小时,24小时制
get/setMinutes()返回/设置分钟数
get/setSeconds()返回/设置秒钟数
get/setTime()返回/设置时间内(毫秒为单位)
  1. 返回/设置年份方法:
- eg:
1
2
3
4
//获取:
mydate.getFullYear();
//设置:
mydate.setFullYear();
  1. 返回/设置星期方法:
- eg:
1
2
3
//方法:
getDay();
//返回的是0-6的数字,0表示星期天,若要返回对应的“星期”,可通过数组完成。
  1. 返回/设置时间方法:
- **方法:**get/setTime();
- **注意:**
  1. 一小时60分,一分60秒,一秒100毫秒;
  2. 时间推迟1小时,就是``x.setTime(x.getTime()+60*60*100);``
  1. String字符串对象(类JAVA)
-
1
2
3
x.length; //返回字符串的长度
x.toUpperCase(); //转大写字母
x.toLowerCase(); //转小写字母
  1. 返回指定位置的字符:
- **语法:**``stringObject.charAt(index)``
- **参数说明:**
  - `index`:必需,表示字符串某个位置的数字,即字符在字符串中的下标。
  1. 返回指定字符串首次出现的位置
- **语法:**``stringObject.indexOf(substring,starpos)``
- **参数说明:**
  1. ``substring``:必需,规定需检索的字符串值;
  2. ``starpos``:可选的整数参数,规定在字符串开始检索的位置。它的合法取值是0到stringObject.length-1。如省略该z高数,则将字符串的首字符开始检索。
  1. 字符串分割split()
- **语法:**``stringObject.split(separator,limit)``
- **参数说明:**
  1. `Separator`:必需。从该参数指定的地方分割stringObject;
  2. `limit`:可选参数;分割的次数,如设置该参数,返回的子串不会多于这个参数指定的数组,如果无此参数为不限制次数
  1. 提取字符串substring()
- **功能:**用于提取字符串中介于两个指定下标之间的字符。
- **语法:**``stringObject.substring(starPos,stopPos)``
- **参数说明:**
  1. `starPos`: 必需,一个非负的整数,开始的位置;
  2. `stopPos`: 可选,一个非负的整数。结束的位置,如果省略此参数,那么返回的子串会一直到字符串对象的结尾。
- **注意:**
  1. 返回的内容是从star开始(包含star位置的字符)到stop-1处的所有字符,其长度为stop减star
  2. 如果参数star到stop相等,那么该方法返回的就是一个空串(即长度为0的字符串)
  3. 如果star比stop大,那该方法在提取字符串之前会先交换这两个参数
  1. 提取指定数目的字符substr()
- **功能:**从字符串中提取从starPos位置开始的指定数目的字符串
- **语法:**``stringObject.substr(starPos,length)``
- **参数说明:**
  1. ``starPos``:必需,要提取的子串起始位置。必需是数值。
  2. `length`:可选,提取字符串子串的长度,如果省略,返回从`stringObject`的开始位置starPos到stringObject的结尾的字符
- **注意:**
  - 如果参数starPos是负数,从字符串的尾部开始算起的位置,也就是说,-1指字符串最后一个字符,-2指倒数第二个字符,以此类推,如果starPos为负数且绝对值大于字符串长度,starPos为0.
  • Math对象
    • Math对象,提供数据的数学计算
    • 使用Math的属性和方法:
      • eg:
      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>