新聞中心
JavaScript 腳本的存儲(chǔ)區(qū)域有哪些?
HTML元素就是網(wǎng)頁(yè)上的框、按鈕、文字等,css就是用來(lái)控制這個(gè)框顯示成什么樣的,javascript用途比較多,既可以在里面控制html也可以控制css,xml是一種數(shù)據(jù)規(guī)范化標(biāo)記語(yǔ)言,可以存儲(chǔ)信息的,你說(shuō)的服務(wù)器腳本應(yīng)該就是指程序代碼吧,用來(lái)控制業(yè)務(wù)邏輯等的,SQL是數(shù)據(jù)庫(kù)腳本語(yǔ)言
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶,將通過(guò)不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:申請(qǐng)域名、網(wǎng)絡(luò)空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、播州網(wǎng)站維護(hù)、網(wǎng)站推廣。
JavaScript對(duì)數(shù)組存儲(chǔ)容量有限制嗎?
Javascript自身提供了一些操作,可以對(duì)數(shù)組實(shí)現(xiàn)一定的處理,例如排序、連接、堆棧等等,下面做一下簡(jiǎn)單的介紹。
1,concat(arrayName2, arrayName3, …, arrayNameN) ,將數(shù)組本身和另外一個(gè)或多個(gè)數(shù)組進(jìn)行連接,例如:
var arr1=[”a”,”c”];
var arr2=[”b”,”d”];
var arr22=[”e”,”f”];
var arr3=arr1.concat(arr2,arr22);
document.write(arr3);//結(jié)果顯示為:a,c,b,d,e,f
2,join(separator),通過(guò)間隔符將數(shù)字連接為字符串,例如:
var arr1=[”a”,”b”,”c”,”d”,”e”];
var arr1Str=arr1.join(”-”);
document.write(arr1Str);//結(jié)果顯示為:a-b-c-d-e
3,pop()/push(element1, …, elementN) ,實(shí)現(xiàn)了堆棧的操作,push是入棧,pop是出棧,例如:
var arr1=[”a”,”b”];
arr1.push(”c”,”d”);
document.write(arr1);//結(jié)果為:a,b,c,d
var value=arr1.pop();
document.write(value);//結(jié)果為:d
4,reverse() ,將數(shù)組反向排序,例如:
var arr1=[”a”,”b”,”c”];
arr1.reverse();
document.write(arr1);//結(jié)果為:c,b,a
5,sort(compareFunction),按照指定的排序規(guī)則進(jìn)行排序,如果參數(shù)為空,則按照默認(rèn)的字母和數(shù)字進(jìn)行排序,例如:
function mySort(o1,o2){
if(o1.lengtho2){
return 1;
}
return -1;
}
var arr1=[”a”,”c”,”bd”];
arr1.sort();
document.write(arr1);//結(jié)果為:a,bd,c
arr1.sort(mySort);
document.write(arr1);//結(jié)果為:bd,c,a
6,shift() /unshift,將數(shù)組的第一個(gè)值取出(或者將值插入到數(shù)組第一個(gè)位置),并且數(shù)組長(zhǎng)度縮短(加長(zhǎng)),例如:
var arr1=[”a”,”b”,”c”];
var value=arr1.shift();
document.write(value);//輸出為:a
document.write(arr1);//輸出為:b,c
var value2=arr1.unshift(”g”);
document.write(value);//IE輸出為undefined,F(xiàn)irefox輸出為3
document.write(arr1);//輸出為:g,b,c
7,slice(begin[,end]) ,類似字符串的substring方法,就是截取數(shù)組,例如:
var arr1=[”a”,”b”,”c”];
var arr2=arr1.slice(0,2);
document.write(arr2);//輸出為:a,b
8,splice(index, howMany, [element1][, …, elementN]) ,從指定的位置(index)開始,刪除后面多個(gè)(howMany)數(shù)組的值,并從刪除處開始依次插入新的值,例如:
var arr1=[”a”,”b”,”c”];
arr1.splice(1,1,”m”,”n”,”o”);
document.write(arr1);//輸出為:a,m,n,o,c
應(yīng)該說(shuō),Javascript本身對(duì)數(shù)組提供的操作能力,還是不錯(cuò)的,但是在實(shí)際應(yīng)用中,我們需要對(duì)數(shù)組做更多的操作,例如Java、PHP、.NET中對(duì)數(shù)組都提供了強(qiáng)大的操作能力,而且許多優(yōu)秀的開源項(xiàng)目中,也提供了對(duì)數(shù)組的許多操作,但是Javascript這方面還需要進(jìn)一步加強(qiáng)。
為了對(duì)數(shù)組提供更多的操作,JsJava定義了許多類,來(lái)加強(qiáng)對(duì)數(shù)組的操作,介紹如下:
1,jsjava.util.Arrays類,仿照J(rèn)ava的Arrays類,對(duì)數(shù)組提供了一些高效的操作,例如:
var list=Arrays.asList([”a”,”b”,”c”]);//通過(guò)數(shù)組創(chuàng)建一個(gè)不可變的列表
而且通過(guò)binarySearch,提供了二分法搜索的一個(gè)實(shí)現(xiàn),其它的請(qǐng)參考JsJavaDoc
2,jsorg.apache.commons.lang.ArrayUtils類,該類的實(shí)現(xiàn)是參考Apache優(yōu)秀的commons-lang開源項(xiàng)目實(shí)現(xiàn)的,實(shí)現(xiàn)其中的所有功能,例如對(duì)數(shù)組進(jìn)行插入、刪除、搜索、填充、截取等等,例如:
var arr=ArrayUtils.clone([0,1,2,9,0]);
document.write(arr+”br”);
document.write(ArrayUtils.subarray(arr,0,3)+”br”);
arr.reverse();
document.write(arr);
顯示結(jié)果為:
0,1,2,9,0
0,1,2
0,9,2,1,0
3,jsorg.eob.lang.MultiDimensionArrayUtils類,該類實(shí)現(xiàn)了對(duì)多維數(shù)組的創(chuàng)建支持,例如可以方便創(chuàng)建二維和三維數(shù)組,具體可以參考文章《在Javascript之中如何創(chuàng)建多維數(shù)組》
4,org.apache.commons.math.linear.RealMatrixImpl類,實(shí)現(xiàn)對(duì)矩陣的操作,矩陣實(shí)際上就是多維數(shù)組,即實(shí)現(xiàn)了對(duì)多維數(shù)組的支持,例如可以實(shí)現(xiàn)多維數(shù)組的加、減、乘、除等操作,還有數(shù)學(xué)運(yùn)算中對(duì)矩陣的其它操作,具體可以參考JsJavaDoc。
JsJava是對(duì)Javascript語(yǔ)言最好的擴(kuò)展和延伸,它與目前流行的prototype.js的方向是不一樣的,如果你正在構(gòu)建web應(yīng)用,那么JsJava將是你界面應(yīng)用最好的支撐。
怎樣用JAVASCRIPT+XML存儲(chǔ)數(shù)據(jù)
javascript是在客戶端運(yùn)行的,是不能操作服務(wù)器端的xml文件的,可以用服務(wù)器端運(yùn)行的程序來(lái)操作xml,如asp、php、jsp、asp.net等等,就是不用javascript也可以實(shí)現(xiàn)用xml存儲(chǔ)數(shù)據(jù)。當(dāng)前流行的ajax技術(shù)也只是用javascript來(lái)向服務(wù)器端程序發(fā)出請(qǐng)求,由服務(wù)器端程序返回所需要的數(shù)據(jù),數(shù)據(jù)格式可以是xml或其他形式。
JavaScript本地存儲(chǔ)
暫時(shí)想到以下方案,僅供參考:
1.監(jiān)聽(tīng)輸入框的change事件,每次值變化都記錄值,并傳遞到后臺(tái)(AJAX),用JAVA變量存儲(chǔ)。同樣刷新時(shí)(頁(yè)面加載)先從后臺(tái)取這個(gè)值,并賦到文本框。
2.監(jiān)聽(tīng)輸入框的change事件,每次值變化都記錄值,并儲(chǔ)存到COOKIE里,同樣刷新時(shí)(頁(yè)面加載)先從COOKIE取這個(gè)值,并賦到文本框。
3.開發(fā)一個(gè)輸入插件,也就是輸入框。定義各種屬性,記錄下值就OK了。
第一種估計(jì)會(huì)有效率問(wèn)題;
第二種估計(jì)頻繁讀寫本地文件,速度也是問(wèn)題。
覺(jué)得第三周比較靠譜,呵呵
網(wǎng)站名稱:javascript存儲(chǔ),js 數(shù)據(jù)存儲(chǔ)
文章路徑:http://www.dlmjj.cn/article/dsdscdo.html