摘要:類型檢測(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é)果為 -1forEach( )方法
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
摘要:類型大小寫轉(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)容...
摘要:前言大家好,小弟飛狐,愛學(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ù)之前,...
摘要:原型原型是什么所謂原型就是類型對(duì)象的一個(gè)屬性在函數(shù)定義時(shí)就包含了屬性它的初始值是以個(gè)空對(duì)象在中并沒有定義函數(shù)的原型類型所以原型可以是任何類型原型是用于保存對(duì)象的共享屬性和方法的原型的屬性和方法并不會(huì)影響函數(shù)本身的屬性和方法示例代碼類型的屬性 原型 原型是什么 所謂原型(Prototype)就是Function類型對(duì)象的一個(gè)屬性 在函數(shù)定義時(shí)就包含了prototype屬性,它的初始值是...
摘要:錯(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...
摘要:對(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,...
閱讀 2252·2021-11-24 11:15
閱讀 3104·2021-11-24 10:46
閱讀 1403·2021-11-24 09:39
閱讀 3936·2021-08-18 10:21
閱讀 1490·2019-08-30 15:53
閱讀 1404·2019-08-30 11:19
閱讀 3339·2019-08-29 18:42
閱讀 2336·2019-08-29 16:58