前端進修紀錄(JS篇)

javascript簡介

javascript俗稱jsjs的正式名稱是ECMAScript,是網景公司Netscape公司開闢的一種基於客戶端瀏覽器、基於面向對象、事宜驅動式的網頁劇本言語。重要用於:交互式操縱,表單考證,網頁殊效,web遊戲,服務器劇本開闢等;

特性

  • js是一種詮釋性劇本編程言語
  • js是基於對象的劇本編程言語
  • 簡單性
  • 安全性(不能接見當地硬盤)
  • 動態性的
  • 跨平台性(依靠瀏覽器,與操縱系統無關)

三種應用要領

(1)應用onclick:屬性構建實行js代碼

<a href="#" onclick="alert(1)">點擊</a>

(2)應用<script../>標籤來包括js代碼

<script type="text/javascript">
    alert('Hello, world');
</script>

(3)導入外部的javascript文件,讓html頁面和js劇本星散

<script src="outer.js" type="text/javascript"></script>

javascript變量和數據範例

js是弱範例劇本言語,應用變量之前,能夠無需定義,當應用某個變量的時刻直接應用即可。重要分為以下兩種定義體式格局:
(1)隱式定義:直接給變量賦值(隱式變量聲明的時刻必須賦初值)
a = 10;
(2)顯現定義:應用var關鍵字定義變量(應用之前必須賦初值,不然會報undefined毛病)
var a = 10;

變量定名劃定規矩:

  • 首字母必須是字母、下劃線或許$標記。
  • 餘下的字母能夠是下劃線、$、恣意字母或数字。
  • 變量名不能應用關鍵字
  • 變量名對大小寫敏感。

js是弱範例劇本言語,聲明變量時無需指明變量的數據範例,js是詮釋時動態決議的,數據保留在內存中時也是有數據範例的,經常使用數據範例以下:

  • 數值範例(number):包括整數和浮點數
  • 布爾範例(boolean):只要truefalse兩個值
  • 字符串範例(string):字符串必須用單引號或雙引號括起來
  • 對象範例(object)
  • 數組範例(array
  • 未定義範例(undefined):特地用來肯定一個已建立然則沒有初值的變量
  • 空範例(null):用來表明某個變量的值為空
  • NaN:非數值型

注:undefinednull的值相稱,範例差別。 兩個字符串是不是相稱,可用==來推斷。

數據範例轉換:

+號或許toString():數值number範例轉換成字符串
parseInt():將字符串轉為整型
parseFloat():將字符串轉換為浮點型

注重:

parseInt('67red') -> 67(字符串轉為整型的時刻會自動截取前面的数字,背面的疏忽)
parseInt('red67') -> NaN(字符串前面沒有数字,會報not a number毛病)

字符串經常使用要領:

stringObject.charAt(index):獵取字符串特定索引處的字符 
index:下標(假如不在0~stringObject.length-1的範圍內,返回'') 
返回值:string

stringObject.toUpperCase():將字符串的一切字符轉換成大寫字母 
返回值:string

stringObject.toLowerCase():將字符串的一切字符轉換成小寫字母 
返回值:string

stringObject.substring(start, end):提取字符串中介於兩個指定下標之間的字符 
start:必須,字符串中最先位置 
end:非必須,字符串中完畢位置,假如不指定,會一直到字符串的末端 
返回值:string

arrayObject.slice(start, end):提取字符串中介於兩個指定下標之間的字符,可指定負數 
start:必須,字符串中最先位置 
end:非必須,字符串中完畢位置,假如不指定,會一直到字符串的末端 
返回值:string

stringObject.indexOf(searchvalue,fromindex):返回某個指定的字符串值在字符串中初次湧現的位置 
searchvalue:必須,須要查找的字符串 
fromindex:非必須,字符串的指定位置,假如不指定,會從字符串的最先位置最先查找 
返回值:number

stringObject.replace(regexp/substr,replacement):將字符串中的某個子串以特定的字符串替代 
regexp/substr:須要替代的字符串 
replacement:替代字符串的值 
返回值:string

stringObject.split(separator,limit): 
separator    必須,分隔符 
limit 可選。該參數可指定返回的數組的最大長度,假如不指定,全部字符串都會被支解 
返回值:string數組

stringObject.concat(str1, str2...):用於將多個字符串拼加成一個字符串 
str1:字符串 
返回值:string

注重:

  • 用字符串做加法的時刻,會做字符串拼接事情
  • 用字符串做減法、乘法、除法的時刻,會將字符串轉換成數值範例舉行減法、乘法、除法運算

js數組

三種定義數組的要領:
(1)定義時直接給數組變量賦值
var arr = [1, 2, 3];
(2)定義一個空數組
var arr = [];
(3)用new要領定義數組
var arr = new Array();

特性:

  • 數組長度可變
  • 統一數組中的元素範例能夠互不雷同
  • 當接見未賦值的數組元素時,該元素值為undefined,不會數組越界

js內里沒有數組越界的觀點,會顯現undefined

js運算符

算術運算符:+ - * / % ++ --
賦值運算符:=
比較運算符:> < >= <= == != === !==
邏輯運算符:&& || !
位運算符:& | ~ ^ << >>
其他運算符:三目運算符(?:)
void運算符:強行指定某個表達式的不會返回值

        `typeof` 運算符:獵取某個變量的數據範例
         `instanceof`運算符:推斷某個變量的數據範例是不是為指定的數據範例
         `var a = void 3;  //輸出為undefined`
         `document.write(typeof(str));  //輸出為string`
         ` alert(arr instanceof Array);  //輸出為true`

注重:js中沒有繼續的觀點,一切的對象的父類都是object

js流程掌握

js支撐的分支語句重要有ifswitch語句。

if(前提){
    //表達式
}else{
    //表達式
}

//注重:switch中表達式的值能夠是number範例,也能夠是string範例
switch(表達式){
    case 值1: //表達式 break;
    case 值1: //表達式 break;
    ...
    default://表達式;

}

js支撐的輪迴語句重要有while輪迴,do-while輪迴,for輪迴,for-in輪迴

//先推斷,后實行
while(輪迴前提){
    //表達式
}

//先實行,后推斷,最少實行一次
do{
    //表達式
}while(輪迴前提)

//當輪迴次數肯定的情況下,平常用for輪迴,更簡約
for(表達式1; 表達式2; 表達式3){
    //表達式
}

//可用於遍歷對象,比方數組(數組遍歷的是下標,對象遍歷的是屬性,注重:都不是詳細的值)
for(變量 in 對象){
    //表達式
}

//遍歷的是下標
var arr = [1, 2, 3, 4, 5];
            arr[5] = 10;
            arr[10] = 11;

for(var a in arr){
    document.write(arr[a]+'    ');
}

js供應了breakcontinue來轉變輪迴的掌握流

  • break:跳出該層輪迴
  • continue:完畢該層輪迴的本次輪迴

經常使用的特別語句

語句是js的基礎實行單位,每條語句都是以分號完畢,語句了前面的賦值語句、算術運算等語句以外,另有一些特別語句。

  • 語句塊(包括在一對大括號里)
  • 空語句(應用應用比較少)
  • 非常拋出語句
    throw new Error('非常拋出');
  • 非常捕獲語句

    try{
        var age = 5;
        if(age == 5){
            throw new Error('非常拋出');
        }
    }catch(e){
        document.write('失足:'+e.message);
    }finally{
        document.write('總會實行的finally塊');
    }
    原文作者:好久不見
    原文地址: https://segmentfault.com/a/1190000015135236
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞