日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

JavaScript基础二

發布時間:2023/12/13 综合教程 37 生活家
生活随笔 收集整理的這篇文章主要介紹了 JavaScript基础二 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、流程控制

1. if ... else

var age = 20;
if (age > 18) {
    console.log('ok')
}else {
    console.log('back')
}

2.if ... else if ... else

var age = 30;
if (age < 18){
    console.log('未成年')
}else if (age > 60){
    console.log('退休')
}else {
    console.log('上班')
}

3.switch

一定要加break,否則繼續往下執行

var day = 3;
switch (day) {
    case 1:
        console.log('星期一');
        break;
    case 2:
        console.log('星期二');
        break;
    case 3:
        console.log('星期三');
        break;
    default :
        console.log('周末');
}

4.for循環

① for(var i=0;i<10;i++) {循環體}

for (var i=0;i<10;i++){
    console.log(i)
}

② 死循環

for (;;){
    console.log(1)
}

5.while循環

while (條件) {循環體中要修改條件}

var n = 10;
while (n >10) {
    console.log(n);
    n--
}

6.三元運算

多用于賦值,對變量值做操作

// 三元運算
var x = 100;
var y = 10;
var a = x > y ? x:y

二、函數

1.普通函數

function func(x,y) {
    return x+y
}

特點:① 多傳參數、少傳參數和不傳參數都不會報錯,沒有傳值相當于傳了undefined

   ② 少傳參數會返回NaN

   ③ 返回值是多個時,不會報錯,但默認返回最后一個

④ 需要返回多個值時,把返回值放在數組中

2.匿名函數:多用于和其他的函數/方法搭配使用,也用于回調函數中

function (x,y) {
    return x+y
}
var foo = function (x,y) {
    return x+y
};

var ret1 = foo(10,20);
console.log(ret1);

3.ES6新特性,箭頭函數

箭頭函數時匿名函數的簡寫

var f = x , y => x+y

等同于
var f = function(x,y) {
    return x+y
}

3.立即執行函數:一頁面使用兩個JS文件,一個JS定義變量,另一個JS打印變量;解決方法:函數的局部變量在外部是不能使用的

JS中沒有模塊的概念,多通過立即中子星函數實行變量的私有

// 立即執行函數
(function(a,b){
    console.log('自執行函數');
    console.log(x+y);
})(111,222);

4.函數中的argu傳入參數的個數

function add(a,b,c){
    console.log(a+b+c);
    console.log(arguments.length)
}

add(1,2,3,4,5,6)
6
6

5.函數的全局變量和局部變量

局部變量

在JavaScript函數內部聲明的變量(使用 var)是局部變量,所以只能在函數內部訪問它(該變量的作用域是函數內部)。只要函數運行完畢,本地變量就會被刪除。

全局變量:

在函數外聲明的變量是全局變量,網頁上的所有腳本和函數都能訪問它。

變量生存周期:

JavaScript變量的生命期從它們被聲明的時間開始。

局部變量會在函數運行以后被刪除。

全局變量會在頁面關閉后被刪除。

6.作用域

首先在函數內部查找變量,找不到則到外層函數查找,逐步找到最外層。

7.詞法分析

JavaScript中在調用函數的那一瞬間,會先進行詞法分析。

詞法分析的過程:

當函數調用的前一瞬間,會先形成一個激活對象:Avtive Object(AO),并會分析以下3個方面:

1:函數參數,如果有,則將此參數賦值給AO,且值為undefined。如果沒有,則不做任何操作。
2:函數局部變量,如果AO上有同名的值,則不做任何操作。如果沒有,則將此變量賦值給AO,并且值為undefined。
3:函數聲明,如果AO上有,則會將AO上的對象覆蓋。如果沒有,則不做任何操作。

函數內部無論是使用參數還是使用局部變量都到AO上找。

三、內置對象和方法

JavaScript中一切皆對象

面向對象,ES5中沒有類的概念。

創建對象用new關鍵字,實例化對象。

或者使用構造函數創建對象,首字母大寫。

// 創建新的對象
var name = new String('xiaoming');
// JS面向對象(構造方法)
function Person(name) {
    this.name = name
}

var p1 = new Person('xiaobai');

JavaScript中使用原型鏈的方法

// 給對象統一的方法
Person.prototype.dream = function () {
    console.log(this.name + 'good')
};
p1.dream();

四、Date對象

創建對象可傳入參數:日期字符串、毫秒數

// Date對象
var today = new Date();
//轉化為字符串
today.toLocaleString();
Date對象的方法
var d = new Date(); 
//getDate()                 獲取日
//getDay ()                 獲取星期
//getMonth ()               獲取月(0-11)
//getFullYear ()            獲取完整年份
//getHours ()               獲取小時
//getMinutes ()             獲取分鐘
//getSeconds ()             獲取秒
//getMilliseconds ()        獲取毫秒
//getTime ()                返回累計毫秒數(從1970/1/1午夜)

五、JSON對象

不用new,直接使用方法

JSON.parse() 字符串 --> JS的數據類型

JSON.stringify JS的數據類型 --> 字符串

var str1 = '{'name':'xiaoming'}';
var obj1 = {"name":"xiaoming"};

//JSON將字符串轉化為對象
var obj = JSON.parse(str1);

//JSON將對象轉化為字符串
var str = JSON.stringify(obj1);

六、RegExp對象

正則表達式對象,兩種創建方式

① new RegExp(正則表達式)

// 檢驗手機號
var s1 = '13812341234';

// 創建正則表達式對象
var r1 = new RegExp('^1[3-9][0-9]{9}$');

// 驗證判斷,返回布爾值
r1.test(s1)

② 簡寫正則表達式

/正則表達式/

// 檢驗手機號
var s1 = '13812341234';

// 簡寫正則表達式
/^1[3-9][0-9]{9}$/.test(s1);

注意:

① test不傳值,相當于傳了undefined,內部當做'undefined'處理

② JS的正則表達式里不能寫空格

③ 兩個匹配模式

  g:全局匹配,附帶lastIndex屬性,會記錄下一次匹配的開始位置,一旦返回False則會將lastIndex清0

  i:忽略大小寫模式

七、Math對象

不用new,直接使用方法

相關方法:

abs(x)      返回數的絕對值。
exp(x)      返回 e 的指數。
floor(x)    對數進行下舍入。
log(x)      返回數的自然對數(底為e)。
max(x,y)    返回 x 和 y 中的最高值。
min(x,y)    返回 x 和 y 中的最低值。
pow(x,y)    返回 x 的 y 次冪。
random()    返回 0 ~ 1 之間的隨機數。
round(x)    把數四舍五入為最接近的整數。
sin(x)      返回數的正弦。
sqrt(x)     返回數的平方根。
tan(x)      返回角的正切。

總結

以上是生活随笔為你收集整理的JavaScript基础二的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。