成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

JavaScript面向?qū)ο笾械腁rray類型個(gè)人分享

KnewOne / 2813人閱讀

摘要:類型檢測(cè)數(shù)組示例代碼調(diào)用結(jié)果為方法作用用于判斷當(dāng)前對(duì)象的數(shù)據(jù)類型結(jié)果特點(diǎn)可以準(zhǔn)確判斷出當(dāng)前變量的類型調(diào)用結(jié)果為調(diào)用結(jié)果為報(bào)錯(cuò)調(diào)用結(jié)果為調(diào)用結(jié)果為方法判斷指定類型是否出現(xiàn)在當(dāng)前對(duì)象的原型鏈中調(diào)用結(jié)果為轉(zhuǎn)換數(shù)組提供了兩種方法用于數(shù)組的轉(zhuǎn)

Array類型 檢測(cè)數(shù)組

示例代碼:

var arr = [1,2,3,4,5];
console.log(arr instanceof Array);//調(diào)用結(jié)果為 true
/*
    Object.prototype.toString.call()方法
      * 作用 - 用于判斷當(dāng)前對(duì)象的(數(shù)據(jù))類型
      * 結(jié)果 - [object Array]
      * 特點(diǎn) - 可以準(zhǔn)確判斷出當(dāng)前變量的類型
 */
console.log(Object.prototype.toString.call(arr));// 調(diào)用結(jié)果為 [object Array]

console.log(typeof null);// object

// console.log(null instanceof Null)// 調(diào)用結(jié)果為 報(bào)錯(cuò)

console.log(null instanceof Object);// 調(diào)用結(jié)果為 false

console.log(Object.prototype.toString.call(null));// 調(diào)用結(jié)果為 [object Null]

// Object.prototype.isPrototypeOf()方法 - 判斷指定類型是否出現(xiàn)在當(dāng)前對(duì)象的原型鏈中
console.log(Array.prototype.isPrototypeOf(arr));// 調(diào)用結(jié)果為 true

console.log(Array.isArray(arr));// true
轉(zhuǎn)換數(shù)組

JavaScript提供了兩種方法,用于數(shù)組的轉(zhuǎn)換

toString()方法 - 把數(shù)組轉(zhuǎn)換為字符串,并返回結(jié)果

valueOf()方法 - 返回?cái)?shù)組對(duì)象的原始值

示例代碼:

var arr = [1,2,3,4,5];
/*
    利用toString()方法將數(shù)組轉(zhuǎn)換為字符串
      * 結(jié)果 - 多個(gè)數(shù)組元素被逗號(hào)( , ) 進(jìn)行分隔組成的字符串
 */
console.log(arr.toString());// 調(diào)用結(jié)果為 1,2,3,4,5

console.log(arr.valueOf());// 調(diào)用結(jié)果為 [1,2,3,4,5]

var obj = {
    name : "皮卡丘"
};
console.log(obj.valueOf());// 調(diào)用結(jié)果為 { name: "皮卡丘" }
進(jìn)出棧方法

所謂棧就是數(shù)據(jù)結(jié)構(gòu),(先進(jìn)后出)這個(gè)結(jié)構(gòu)就叫棧

示例代碼:

var arr = [1,2,3,4,5];

/* 在指定的數(shù)組的最后面添加指定的元素 */
arr.push(6);
console.log(arr);
/* 刪除指定數(shù)組的最后一個(gè)元素并返回被刪除的數(shù)組 */
arr.pop();
console.log(arr);

/* 在指定的數(shù)組的最前面添加指定元素 */
arr.unshift(7);
console.log(arr);
/* 刪除指定數(shù)組的最前面的一個(gè)元素并返回被刪除的數(shù)組 */
arr.shift();
console.log(arr);

分析圖:

排序方法

注意 - reverse()和sort()方法的返回值是經(jīng)過排序之后的數(shù)組

注意: 使用if進(jìn)行判斷如果形參中的 a < b 排序方式是由大到小進(jìn)行排列
如果 a > b 排序方式是由小到大進(jìn)行排列

注意返回值是負(fù)數(shù)的情況下是無效的

示例代碼:

/*
    reverse()方法 - 表示反轉(zhuǎn)數(shù)組的元素順序(就是把順序給到過來)
 */
var arr = [3,1,2,3,4,5,21];
// console.log(arr.reverse());// 調(diào)用結(jié)果為 [ 5, 4, 3, 2, 1 ]

/*
    sort()方法 - 表示數(shù)組的元素進(jìn)行排列(就是正常順序排列)
 */
var result = arr.sort();
console.log(result);// 調(diào)用結(jié)果為 [ 1, 2, 3, 4, 5 ]
console.log(arr);// 調(diào)用結(jié)果為 [ 1, 2, 3, 4, 5 ]


/*
    使用if進(jìn)行判斷如果形參中的 a < b 排序方式是由大到小進(jìn)行排列
    如果 a > b 排序方式是由小到大進(jìn)行排列
    * 注意返回值是負(fù)數(shù)的情況下是無效的
 */

var result = arr.sort(function (a,b) {
    if (a < b){
        /* 返回值 */
        return 1;
    }
});
console.log(arr);// 調(diào)用結(jié)果為 [ 1, 2, 3, 3, 4, 5, 21 ]
console.log(result);// 調(diào)用結(jié)果為 [ 1, 2, 3, 3, 4, 5, 21 ]

控制臺(tái)效果代碼圖:

連接方式

concat()方法 - 表示連接兩個(gè)或多個(gè)數(shù)組,并返回結(jié)果

就是把concat()方法中括號(hào)里的元素和原有數(shù)組的元素添加到一起并返回結(jié)果

示例代碼:

var arr = [1,2,3,4,5];
console.log(arr.concat(6));// 調(diào)用結(jié)果為 [ 1, 2, 3, 4, 5, 6 ]
console.log(arr.concat([9,10,"J","O","K"]));// 調(diào)用結(jié)果為 [ 1, 2, 3, 4, 5, 9, 10, "J", "O", "K" ]

控制臺(tái)效果圖:

操作方法

特點(diǎn) - 可以刪除指定元素的位置并且給指定的位置添加新的元素

示例代碼:

var arr = [1,2,3,4,5];
/*
    splice(start, deleteCount)方法
    * 作用 - 用于刪除當(dāng)前數(shù)組中指定位置指定個(gè)數(shù)的元素
    * 參數(shù)
      * start - 表示刪除的開始位置
      * deleteCount - 表示刪除的個(gè)數(shù)
    * 返回值 - 將刪除的元素組成的新數(shù)組進(jìn)行返回
 */
// var result = arr.splice(0, 5);
// console.log(result);// 調(diào)用結(jié)果為 [ 1, 2, 3, 4, 5 ]
// console.log(arr);// 調(diào)用結(jié)果為 []

/*
    splice(start, deleteCount, item1, item2, ...)方法
    * 作用 - 向指定數(shù)組的指定位置添加元素
    * 參數(shù)
      * start - 表示刪除的開始位置
      * deleteCount - 表示刪除的個(gè)數(shù)
      * item1, item2, ... - 表示向數(shù)組添加的元素
    * 返回值 - 將刪除的元素組成的新數(shù)組進(jìn)行返回
 */
var result = arr.splice(0, 0, 6,7,8);
console.log(result);// 調(diào)用結(jié)果為 []
console.log(arr);// 調(diào)用結(jié)果為 [ 6, 7, 8, 1, 2, 3, 4, 5 ]

var result = arr.splice(0, 3, 6,7,8);
console.log(result);// 調(diào)用結(jié)果為 [ 1, 2, 3 ]
console.log(arr);// 調(diào)用結(jié)果為 [ 6, 7, 8, 4, 5 ]

/*
    slice()方法
    * 作用 - 截取指定數(shù)組中的元素
    * 參數(shù)
      * begin - 表示開始截取的位置(從 0 開始)
      * end - 表示結(jié)束截取的位置(截取最后一個(gè)位置的下一個(gè)位置)
    * 返回值 - 返回截取的元素組成的新數(shù)組
 */
var result = arr.slice(2,3);
console.log(result);// 調(diào)用結(jié)果為 [3]
檢索方法

indexOf()和lastindexOf()方法

用于檢索數(shù)組中是否包含指定的元素內(nèi)容 - 并且返回元素所在的位置

indexOf() - 表示從左至又的順序進(jìn)行檢索

lastIndexOf() - 表示從右至左的順序進(jìn)行檢索

注意 - 如果在同一個(gè)數(shù)組當(dāng)中有重復(fù)的元素存在,則會(huì)匹配到第一個(gè)被查找到的元素信息的位置

比如 - (indexOf就是從左到右開始找第一個(gè)相符的元素,lastIndexOf就是從右到左找第一個(gè)相符的元素)

如果檢索的元素并不在指定數(shù)組中時(shí) - 那么返回的結(jié)果為 -1(這是固定的)

示例代碼:

var arr = ["葫蘆娃","哪吒","皮卡丘","哪吒","舒克","貝特"];

console.log(arr.indexOf("哪吒"));// 調(diào)用結(jié)果為 1
console.log(arr.lastIndexOf("舒克"));//調(diào)用結(jié)果為 4
console.log(arr.indexOf("哆啦A夢(mèng)"));// 調(diào)用結(jié)果為 -1
forEach( )方法

Array.prototype.forEach()方法

作用 - 用于遍歷指定數(shù)組

參數(shù)

callback - 表示回調(diào)函數(shù)

currentValue - 表示遍歷數(shù)組得到每個(gè)元素

index - 表示遍歷數(shù)組得到每個(gè)元素對(duì)應(yīng)的索引值

array - 表示遍歷的數(shù)組

示例代碼:

var arr = ["皮卡丘","葫蘆娃","舒克","貝特","叮當(dāng)貓"];

arr.forEach(function (currentValue,index,array) {
    console.log(array);
});

控制臺(tái)示例圖:

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/108400.html

相關(guān)文章

  • JavaScript面向對(duì)象中的String類型個(gè)人分享

    摘要:類型大小寫轉(zhuǎn)換表示將小寫內(nèi)容轉(zhuǎn)換為大寫內(nèi)容表示將大小內(nèi)容轉(zhuǎn)換為小寫內(nèi)容示例代碼構(gòu)造函數(shù)方式表示將小寫內(nèi)容轉(zhuǎn)換為大寫內(nèi)容表示將大小內(nèi)容轉(zhuǎn)換為小寫內(nèi)容調(diào)用結(jié)果為調(diào)用結(jié)果為控制臺(tái)調(diào)用效果圖根據(jù)指定位置獲取字符串表示通過指定字符串中指定字符 String類型 大小寫轉(zhuǎn)換 toUpperCase() - 表示將小寫內(nèi)容轉(zhuǎn)換為大寫內(nèi)容 toLowerCase() - 表示將大小內(nèi)容轉(zhuǎn)換為小寫內(nèi)容...

    Fundebug 評(píng)論0 收藏0
  • 聽飛狐聊JavaScript設(shè)計(jì)模式系列01

    摘要:前言大家好,小弟飛狐,愛學(xué)習(xí),愛裝逼,樂于分享,初來乍到,請(qǐng)多多關(guān)照。特別注意一下,函數(shù)在中是對(duì)象,不是一種數(shù)據(jù)類型,這可是世界的一等公民。和,和的關(guān)系又很曖昧,后面細(xì)說,要不然會(huì)暈菜。基本數(shù)據(jù)類型,,,,,這五種基本數(shù)據(jù)類型是按值訪問的。 前言 大家好,小弟飛狐,愛學(xué)習(xí),愛裝逼,樂于分享,初來乍到,請(qǐng)多多關(guān)照(~ o ~)~zZ。出道幾年,對(duì)JavaScript情有獨(dú)鐘,聊技術(shù)之前,...

    CHENGKANG 評(píng)論0 收藏0
  • JavaScript面向對(duì)象中的原型個(gè)人分享

    摘要:原型原型是什么所謂原型就是類型對(duì)象的一個(gè)屬性在函數(shù)定義時(shí)就包含了屬性它的初始值是以個(gè)空對(duì)象在中并沒有定義函數(shù)的原型類型所以原型可以是任何類型原型是用于保存對(duì)象的共享屬性和方法的原型的屬性和方法并不會(huì)影響函數(shù)本身的屬性和方法示例代碼類型的屬性 原型 原型是什么 所謂原型(Prototype)就是Function類型對(duì)象的一個(gè)屬性 在函數(shù)定義時(shí)就包含了prototype屬性,它的初始值是...

    pakolagij 評(píng)論0 收藏0
  • JavaScript面向對(duì)象中的錯(cuò)誤與異常個(gè)人分享

    摘要:錯(cuò)誤與異常錯(cuò)誤與異常概念所謂錯(cuò)誤就是錯(cuò)誤就是程序中不正常的運(yùn)行狀態(tài)在其他編程語言中稱為異?;蝈e(cuò)誤解釋器會(huì)為每個(gè)錯(cuò)誤情況創(chuàng)建并且拋出一個(gè)對(duì)象對(duì)象包含錯(cuò)誤的描述信息語句語句作用用于捕獲和處理代碼中的錯(cuò)誤語句作用用于處理語句中出現(xiàn)的錯(cuò)誤語句 錯(cuò)誤與異常 錯(cuò)誤與異常概念 所謂錯(cuò)誤就是錯(cuò)誤就是程序中不正常的運(yùn)行狀態(tài) 在其他編程語言中稱為異?;蝈e(cuò)誤 解釋器會(huì)為每個(gè)錯(cuò)誤情況創(chuàng)建并且拋出一個(gè)Erro...

    王陸寬 評(píng)論0 收藏0
  • JavaScript中的面向對(duì)象(object-oriented)編程

    摘要:對(duì)象在中,除了數(shù)字字符串布爾值這幾個(gè)簡單類型外,其他的都是對(duì)象。那么在函數(shù)對(duì)象中,這兩個(gè)屬性的有什么區(qū)別呢表示該函數(shù)對(duì)象的原型表示使用來執(zhí)行該函數(shù)時(shí)這種函數(shù)一般成為構(gòu)造函數(shù),后面會(huì)講解,新創(chuàng)建的對(duì)象的原型。這時(shí)的函數(shù)通常稱為構(gòu)造函數(shù)。。 本文原發(fā)于我的個(gè)人博客,經(jīng)多次修改后發(fā)到sf上。本文仍在不斷修改中,最新版請(qǐng)?jiān)L問個(gè)人博客。 最近工作一直在用nodejs做開發(fā),有了nodejs,...

    JerryZou 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<