JavaScript中的数组、json对象、eval()函数(四)

一、JavaScript中的数组

  • 数组使用[]、new Array()或new Array(count)进行创建
  • 创建数组之后我们可以对其静态初始化,也可以对其动态赋值
  • 数组的常用属性:length
  • 数组的常用方法:toString()、join()、reverse()、push()、pop()
<script type="text/javascript">
    //静态初始化
    var myArray = [1,2,3,45,67];
    //获取数组中的个数
    alert("myArray.length="+myArray.length);
    for(var i=0;i<myArray.length;i++){
        alert("myArray["+i+"]="+myArray[i]);
    }
    //动态初始化
    //动态分配5个内存空间,手动赋值之前,系统默认值为undefined
    myArray = new Array(5);
    for(var i=0;i<myArray.length;i++){
        alert("myArray["+i+"]="+myArray[i]);
    }
    //对数组中的元素赋值
    myArray[0]=true;
    myArray[1]=1;
    myArray[2]="guoguo";
    myArray[3]= new Object();
    myArray[4]= new Object();
    myArray[5]= new Object();//虽然声明的时候数组长度为5,但实际上可以存储更多的内容
    for(var i=0;i<myArray.length;i++){
        alert("myArray["+i+"]="+myArray[i]);
    }

    //数组中的常用方法
    var myArray = [1,"abc",true,4.5,16];
    //toString()方法会用英文逗号把数组中的元素连接成字符串
    alert("myArray.toString()="+myArray.toString());//myArray.toString()=1,abc,true,4.5,16
    //join方法,以特殊符号连接数组中的每一个元素,最后生成一个字符串
    var str = myArray.join("-");
    alert("str="+str);//str=1-abc-true-4.5-16
    //反转数组中的元素
    myArray.reverse();
    str = myArray.join("-");
    alert("str="+str);//str=16-4.5-true-abc-1
    //pop()返回数组最右边的元素,并将其删除
    var elt = myArray.pop();
    alert("elt="+elt+",myArray.length="+myArray.length);//elt=1,myArray.length=4
    //push()将元素添加到数组最右边
    //push()和pop()模拟的是栈结构,最后入栈的先出栈
    myArray.push("end");
    str = myArray.join("-");
    alert("str="+str);//str=16-4.5-true-abc-end
</script>

二、JavaScript中的json对象

  • json对象使用{}进行创建,通常用在不同的语言之间进行数据交换,它是一种轻量级的数据传输格式
  • java可以在后台拼接json字符串,并将json字符串发送给浏览器,浏览器可以解析json格式的字符串,这样java和javascript就完成了数据传输
<script type="text/javascript">
    //创建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=瓦力瓦力
    //数组中的元素可以是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()函数

JS中eval()函数的作用是将普通字符串当做js代码来解释执行。

<script type="text/javascript">
    var str = "var i=10;";
    //eval函数的作用:将普通字符串当做js代码解释执行            
    window.eval(str);
    alert("i="+i);//i=10
    //eval可以把json字符串转换成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字符串转换成json对象,json变量的名称可自定义
    jsonStr = "{userCode:'102',userName:'haha',age:'16'}";
    //注意:eval()函数所需的参数必须是"({......})"格式
    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>
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

changuncle

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值