欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript 數(shù)組運(yùn)用實(shí)現(xiàn)代碼

 更新時(shí)間:2010年04月13日 16:23:07   作者:  
復(fù)習(xí)一下JS中數(shù)組的運(yùn)用。學(xué)習(xí)js數(shù)組的朋友可以參考下。

截取數(shù)組:slice(startIndex,endIndex):

返回?cái)?shù)組中指定開始位置倒結(jié)束位置的數(shù)組。不改變?cè)瓟?shù)組內(nèi)容。

另外還有一個(gè)重要的方法,插入、刪除或替換數(shù)組元素方法:
splice(startIndex,howmany,element1~elementX):會(huì)修改原數(shù)組內(nèi)容。參數(shù)含義分別為:“指定開始位置”,“刪除多少個(gè)元素個(gè)數(shù)(可以為0)”,“添加到數(shù)組中的新元素(從startIndex下標(biāo)開始)”。

相關(guān)運(yùn)用
//題目一:"A[B]C[D]E[F]G"將其分為兩個(gè)數(shù)組,分別是 ACEG 和 [B][D][F].

復(fù)制代碼 代碼如下:

function QuestionFn1() {
var str = "A[B]C[D]E[F]G";
var oGetTwoArray = new GetTwoArray();
//取左右括號(hào)中的值
oGetTwoArray.GetLeftAndRightValue(str);
oGetTwoArray.GetNoLeftAndRightValue(str);
var array1 = oGetTwoArray.arrBetweenLeftRight;
var array2 = oGetTwoArray.arrNoLeftRight;
alert(array1.join(""));
alert(array2.join(""));
}
//找到左右括號(hào)的index
function GetTwoArray() {
this.indexLeft = 0; //左括號(hào)索引
this.indexRight = 0; //右括號(hào)索引
this.arrBetweenLeftRight = []; //數(shù)組:存放左右括號(hào)中的字母
this.arrNoLeftRight = []; //數(shù)組:存放沒有括號(hào)包圍的字母
//取左右括號(hào)中的值
this.GetLeftAndRightValue = function(str) {
//找到字符串中左括號(hào)的index
this.indexLeft = str.indexOf('[');
this.indexRight = str.indexOf(']');
//取括號(hào)中的值(包含括號(hào))
var value = str.substring(this.indexLeft, this.indexRight + 1);
//存放到數(shù)組中
this.arrBetweenLeftRight.push(value);
//剩下的str
var restStr = str.substr(this.indexRight + 1);
//如果還有左右括號(hào)則繼續(xù)找
if (restStr.indexOf('[') != -1 && restStr.indexOf(']') != -1) {
this.GetLeftAndRightValue(restStr);
}
}
//取沒有左右括號(hào)包圍的值
this.GetNoLeftAndRightValue = function(str) {
//找到字符串中左括號(hào)的index
this.indexLeft = str.indexOf('[');
this.indexRight = str.indexOf(']');
//取沒有左右括號(hào)包圍的值(跟著右括號(hào)的第一個(gè))
var value = str.substring(0, 1);
if (value != '[') { //因?yàn)榈谝粋€(gè)就有可能就是左括號(hào)
//存放到數(shù)組中
this.arrNoLeftRight.push(value);
}
//剩下的str
var restStr = str.substr(this.indexRight + 1);
//如果還有左右括號(hào)則繼續(xù)找
if (restStr.indexOf('[') != -1 && restStr.indexOf(']') != -1) {
this.GetNoLeftAndRightValue(restStr);
}
//剩下的沒有左右括號(hào)了,就全部添數(shù)組里去
else if (restStr.indexOf('[') == -1 && restStr.indexOf(']') == -1) {
this.arrNoLeftRight.push(restStr);
}
}
}

//題目二:有兩個(gè)有序整數(shù)數(shù)組,例如【1, 3, 5, 7, 9】和【2, 4, 6, 7, 8, 10, 13】,設(shè)計(jì)一個(gè)函數(shù)使兩個(gè)數(shù)組合并,并且剔除掉兩個(gè)數(shù)組里重復(fù)的元素.
復(fù)制代碼 代碼如下:

function QuestionFn2() {
var arr1 = [1, 3, 5, 7, 9];
var arr2 = [2, 4, 6, 7, 8, 10, 13];
//循環(huán)arr2中的每一個(gè)元素 去跟 arr1中的每一個(gè)元素 比較
for (var j = 0; j < arr2.length; j++) {
for (var i = 0; i < arr1.length; i++) {
//如果第二個(gè)數(shù)組中的數(shù) 小于數(shù)組一中的 某個(gè)數(shù) 則插到他前面
if (arr2[j] < arr1[i]) {
arr1.splice(i, 0, arr2[j]);
break;
}
//相等則剔除
else if (arr2[j] == arr1[i]) {
arr1.splice(i, 1, arr2[j]);
break;
}
//如果 arr2[j] 比 數(shù)組1中的 最后一個(gè)數(shù)還大 則插到最后面去
else if (arr2[j] > arr1[arr1.length - 1]) {
arr1.push(arr2[j]);
}
}
}
alert(arr1.toString());
}

//題目三:給定一個(gè)整數(shù)數(shù)組,例如【2, 4, 5, 6, 7, 8】和一個(gè)數(shù)字,例如10,請(qǐng)?jiān)O(shè)計(jì)一個(gè)函數(shù)找出兩個(gè)元素,并且使這兩個(gè)數(shù)的和為給定數(shù)字,并打印出來.
復(fù)制代碼 代碼如下:

function QuestionFn3() {
var sum = window.prompt("請(qǐng)輸入數(shù)組中兩數(shù)相加的和", 10);
var arr = [2, 4, 5, 6, 7, 8];
var isFind = false; //記錄是否存在
for (var i = 0; i < arr.length; i++) {
for (var j = i + 1; j < arr.length; j++) {
if (arr[j] + arr[i] == sum) {
alert(arr[i] + "+" + arr[j] + "=" + sum);
isFind = true;
}
}
}
//如果沒有找到
if (!isFind) {
alert("數(shù)組中沒有兩數(shù)相加等于" + sum);
}
}

更多javascript 數(shù)組基礎(chǔ)可以參考
javascript數(shù)組使用調(diào)用方法匯總

相關(guān)文章

  • JavaScript 布爾操作符解析  && || !

    JavaScript 布爾操作符解析 && || !

    在一門編程語言中,布爾操作符的重要性堪比相等操作符。如果沒有測(cè)試兩個(gè)值關(guān)系的能力,那么諸如if...else和循環(huán)之類的語句就不會(huì)有用武之地了。布爾操作符一共有3個(gè): 非、與、或
    2012-08-08
  • js冒泡法和數(shù)組轉(zhuǎn)換成字符串示例代碼

    js冒泡法和數(shù)組轉(zhuǎn)換成字符串示例代碼

    將數(shù)組轉(zhuǎn)換成字符串的方法有很多,想必大家也不會(huì)陌生,下面為大家講解下js冒泡法的使用,感興趣的朋友可以參考下
    2013-08-08
  • XHTML-Strict 內(nèi)允許出現(xiàn)的標(biāo)簽

    XHTML-Strict 內(nèi)允許出現(xiàn)的標(biāo)簽

    XHTML-Strict 內(nèi)允許出現(xiàn)的標(biāo)簽...
    2006-12-12
  • 鼠標(biāo)滾輪編程

    鼠標(biāo)滾輪編程

    鼠標(biāo)滾輪編程...
    2007-01-01
  • 詳解微信UnionID作用

    詳解微信UnionID作用

    這篇文章主要介紹了微信UnionID作用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • javascript 字符 Escape,encodeURI,encodeURIComponent

    javascript 字符 Escape,encodeURI,encodeURIComponent

    下面是對(duì)字符串編碼轉(zhuǎn)換功能函數(shù)大家,大家可以根據(jù)實(shí)際需要選擇使用。
    2009-07-07
  • JavaScript ES6中類與模塊化管理超詳細(xì)講解

    JavaScript ES6中類與模塊化管理超詳細(xì)講解

    JavaScript中的模塊化是指將每個(gè)js文件會(huì)被認(rèn)為單獨(dú)一個(gè)的模塊。模塊之間是互相不可見的。如果一個(gè)模塊需要使用另一個(gè)模塊,那么需要通過指定語法來引入要使用的模塊,而且只能使用引入模塊所暴露的內(nèi)容
    2023-01-01
  • JavaScript 對(duì)象、函數(shù)和繼承

    JavaScript 對(duì)象、函數(shù)和繼承

    JavaScript可以說是一個(gè)基于對(duì)象的編程語言,為什么說是基于對(duì)象而不是面向?qū)ο?,因?yàn)镴avaScript自身只實(shí)現(xiàn)了封裝,而沒有實(shí)現(xiàn)繼承和多態(tài)。
    2009-07-07
  • javascript實(shí)現(xiàn)全角與半角字符的轉(zhuǎn)換

    javascript實(shí)現(xiàn)全角與半角字符的轉(zhuǎn)換

    這篇文章主要介紹了javascript實(shí)現(xiàn)全角與半角字符的轉(zhuǎn)換的相關(guān)代碼與知識(shí)點(diǎn)分享,需要的朋友可以參考下
    2015-01-01
  • javascript圖片預(yù)覽和上傳(兼容IE)

    javascript圖片預(yù)覽和上傳(兼容IE)

    這篇文章主要為大家詳細(xì)介紹了javascript圖片預(yù)覽和上傳的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03

最新評(píng)論