JavaScript數(shù)組、json對象、eval()函數(shù)用法實例分析
本文實例講述了JavaScript數(shù)組、json對象、eval()函數(shù)用法。分享給大家供大家參考,具體如下:
一、JavaScript中的數(shù)組
數(shù)組使用[]、new Array()或new Array(count)進行創(chuàng)建
創(chuàng)建數(shù)組之后我們可以對其靜態(tài)初始化,也可以對其動態(tài)賦值
數(shù)組的常用屬性:length
數(shù)組的常用方法:toString()、join()、reverse()、push()、pop()
<script type="text/javascript">
//靜態(tài)初始化
var myArray = [1,2,3,45,67];
//獲取數(shù)組中的個數(shù)
alert("myArray.length="+myArray.length);
for(var i=0;i<myArray.length;i++){
alert("myArray["+i+"]="+myArray[i]);
}
//動態(tài)初始化
//動態(tài)分配5個內(nèi)存空間,手動賦值之前,系統(tǒng)默認值為undefined
myArray = new Array(5);
for(var i=0;i<myArray.length;i++){
alert("myArray["+i+"]="+myArray[i]);
}
//對數(shù)組中的元素賦值
myArray[0]=true;
myArray[1]=1;
myArray[2]="guoguo";
myArray[3]= new Object();
myArray[4]= new Object();
myArray[5]= new Object();//雖然聲明的時候數(shù)組長度為5,但實際上可以存儲更多的內(nèi)容
for(var i=0;i<myArray.length;i++){
alert("myArray["+i+"]="+myArray[i]);
}
//數(shù)組中的常用方法
var myArray = [1,"abc",true,4.5,16];
//toString()方法會用英文逗號把數(shù)組中的元素連接成字符串
alert("myArray.toString()="+myArray.toString());//myArray.toString()=1,abc,true,4.5,16
//join方法,以特殊符號連接數(shù)組中的每一個元素,最后生成一個字符串
var str = myArray.join("-");
alert("str="+str);//str=1-abc-true-4.5-16
//反轉(zhuǎn)數(shù)組中的元素
myArray.reverse();
str = myArray.join("-");
alert("str="+str);//str=16-4.5-true-abc-1
//pop()返回數(shù)組最右邊的元素,并將其刪除
var elt = myArray.pop();
alert("elt="+elt+",myArray.length="+myArray.length);//elt=1,myArray.length=4
//push()將元素添加到數(shù)組最右邊
//push()和pop()模擬的是棧結(jié)構(gòu),最后入棧的先出棧
myArray.push("end");
str = myArray.join("-");
alert("str="+str);//str=16-4.5-true-abc-end
</script>
二、JavaScript中的json對象
json對象使用{}進行創(chuàng)建,通常用在不同的語言之間進行數(shù)據(jù)交換,它是一種輕量級的數(shù)據(jù)傳輸格式
java可以在后臺拼接json字符串,并將json字符串發(fā)送給瀏覽器,瀏覽器可以解析json格式的字符串,這樣java和javascript就完成了數(shù)據(jù)傳輸
<script type="text/javascript">
//創(chuàng)建json對象
var user ={userCode:101,
uerName:"guoguo",
address:"瓦力瓦力"};
alert("user.userCode="+user.userCode);//user.userCode=101
alert("user.uerName="+user.uerName);//user.uerName=guoguo
alert("user.address="+user.address);//user.address=瓦力瓦力
//數(shù)組中的元素可以是json對象
var userArray = [{userCode:101,
uerName:"guoguo",
address:"瓦力瓦力"},
{userCode:102,
uerName:"haha",
address:"咕嚕咕嚕"}
];
alert("userArray[1].userCode="+userArray[1].userCode);
alert("userArray[1].uerName="+userArray[1].uerName);
alert("userArray[1].address="+userArray[1].address);
</script>
三、JavaScript中的eval()函數(shù)
JS中eval()函數(shù)的作用是將普通字符串當做js代碼來解釋執(zhí)行。
<script type="text/javascript">
var str = "var i=10;";
//eval函數(shù)的作用:將普通字符串當做js代碼解釋執(zhí)行
window.eval(str);
alert("i="+i);//i=10
//eval可以把json字符串轉(zhuǎn)換成json對象,缺點:json變量的名稱不可變
var jsonStr = "var jsonObject = {userCode:'101',userName:'guoguo',age:'16'}";
window.eval(jsonStr);
alert("jsonObject.userCode="+jsonObject.userCode);//jsonObject.userCode=101
alert("jsonObject.userName="+jsonObject.userName);//jsonObject.userName=guoguo
alert("jsonObject.age="+jsonObject.age);//jsonObject.age=16
//eval可以把json字符串轉(zhuǎn)換成json對象,json變量的名稱可自定義
jsonStr = "{userCode:'102',userName:'haha',age:'16'}";
//注意:eval()函數(shù)所需的參數(shù)必須是"({......})"格式
var obj = eval("("+jsonStr+")");
alert("obj.userCode="+obj.userCode);//obj.userCode=102
alert("obj.userName="+obj.userName);//obj.userName=haha
alert("obj.age="+obj.age);//obj.age=16
</script>
感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。
PS:關(guān)于json操作,這里再為大家推薦幾款比較實用的json在線工具供大家參考使用:
在線JSON代碼檢驗、檢驗、美化、格式化工具:
http://tools.jb51.net/code/json
JSON在線格式化工具:
http://tools.jb51.net/code/jsonformat
在線XML/JSON互相轉(zhuǎn)換工具:
http://tools.jb51.net/code/xmljson
json代碼在線格式化/美化/壓縮/編輯/轉(zhuǎn)換工具:
http://tools.jb51.net/code/jsoncodeformat
在線json壓縮/轉(zhuǎn)義工具:
http://tools.jb51.net/code/json_yasuo_trans
更多關(guān)于JavaScript相關(guān)內(nèi)容可查看本站專題:《JavaScript中json操作技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript錯誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學運算用法總結(jié)》
希望本文所述對大家JavaScript程序設(shè)計有所幫助。
- JS中注入eval, Function等系統(tǒng)函數(shù)截獲動態(tài)代碼
- angularjs中的$eval方法詳解
- js eval函數(shù)使用,js對象和字符串互轉(zhuǎn)實例
- JavaScript制作簡易計算器(不用eval)
- js中的eval()函數(shù)把含有轉(zhuǎn)義字符的字符串轉(zhuǎn)換成Object對象的方法
- AngularJs $parse、$eval和$observe、$watch詳解
- 關(guān)于動態(tài)執(zhí)行代碼(js的Eval)實例詳解
- javascript中JSON.parse()與eval()解析json的區(qū)別
- JS eval代碼快速解密實例解析
相關(guān)文章
JavaScript中創(chuàng)建對象的7種模式詳解
本文主要介紹了JavaScript中創(chuàng)建對象的7種模式,具有很好的參考價值,下面跟著小編一起來看下吧2017-02-02
JavaScript圖片旋轉(zhuǎn)效果實現(xiàn)方法詳解
這篇文章主要介紹了JavaScript圖片旋轉(zhuǎn)效果實現(xiàn)方法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-06-06
JS實現(xiàn)讓網(wǎng)頁背景圖片斜向移動的方法
這篇文章主要介紹了JS實現(xiàn)讓網(wǎng)頁背景圖片斜向移動的方法,涉及javascript操作背景圖片特效的技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-02-02

