博客列表 >Javascript 中的数组和json对象

Javascript 中的数组和json对象

Yang_Sir
Yang_Sir原创
2020年05月25日 16:13:16881浏览
  • js中的数组是索引数组,需要关联数组可以用数组对象的属性方式。

1.数组

  • js中的数组与PHP的索引数组一样。
  • 而PHP中的关联数组相当于js数组对象的属性和值

1.1 数组变量的创建和赋值

  • 可以直接为变量赋值为数组格式的值。

    1. //数组对象,js中的数组只能直接写索引数组,与PHP一样
    2. var computer = ["chassis", "screen", "mouse", "keyboard"];
    3. console.log(computer[2]); //mouse
    4. //关联数组需要单独赋值,实际上是该数组对象的属性,可以通过属性的方式访问
    5. computer["energy"] = "electric"; //以数组方式赋值
    6. computer.interface = "USB"; //以属性方式赋值
    7. console.log(computer["energy"]); //electric
    8. console.log(computer.energy); //electric
    9. console.log(computer.interface); //USB
    10. console.log(Array.isArray(computer)); //检测是否是数组:true

1.2 js数组元素的增删改查

  • slice()和splice()方法
  1. //slice()和splice()方法
  2. //slice()获取数组中的部分元素,参数为开始位置和结束位置
  3. console.log(computer.slice(2)); //没有第二个参数默认到结束位置
  4. console.log(computer.slice(0, 2)); //Array [ "chassis", "screen" ]
  5. console.log(computer.slice(3, 6)); //属性部分没有出现:Array [ "keyboard" ]
  6. //splice()插入,删除,替换数组中的元素
  7. computer.splice(1, 1); //删除一个元素,起始位置1,删除数量1
  8. console.log(computer); //Array(3) [ "chassis", "mouse", "keyboard" ]
  9. computer.splice(1, 2, "screen", "sdv"); //替换2个元素
  10. console.log(computer); //Array(3) [ "chassis", "screen", "sdv" ]
  11. computer.splice(1, 0, "mouse", "keyboard"); //插入2个元素
  12. console.log(computer); //Array(5) [ "chassis", "mouse", "keyboard", "screen", "sdv" ]

1.3 数组遍历

  • 通过循环遍历数组中的元素,forEach和for循环只能遍历数组元素
  • for-in循环可以遍历出数组的属性
  1. //遍历数组元素
  2. //forEach方法,只能遍历出索引部分
  3. computer.forEach(function (item, index, array) {
  4. console.log(item); //值
  5. console.log(index); //下标
  6. console.log(array); //原数组
  7. });
  8. //for,只能遍历出索引部分
  9. for (var i = 0; i < computer.length; i++) {
  10. console.log(computer[i]);
  11. }
  12. //以上输出:chassis,mouse,keyboard,screen,sdv
  13. //for in, 关联部分也能遍历出来
  14. for (var index in computer) {
  15. console.log(computer[index]);
  16. }
  17. //以上输出:chassis,mouse,keyboard,screen,sdv,electric,USB

2. json对象

  • JSON: JavaScript Object Notation(JavaScript 对象标记法)
  • JSON是一种大多数编程语言通用数据格式,可用于不同语言之间的数据传输
  • JSON的本质是字符串
  • JSON对象的stringify()方法可以把js对象转换为json字符串,相对的parse()方法可以把json字符串转换为js对象
  1. //创建一个对象
  2. var computer = {
  3. 主机: "华硕",
  4. 显示屏: "戴尔",
  5. 鼠标: "罗技",
  6. 键盘: "雷蛇",
  7. };
  8. console.log(typeof computer); //object
  9. var myJson = JSON.stringify(computer); //转换为json字符串
  10. console.log(myJson); //{"主机":"华硕","显示屏":"戴尔","鼠标":"罗技","键盘":"雷蛇"}
  11. var myObj = JSON.parse(myJson); //json字符串转为js对象
  12. console.log(myObj); //Object { "主机": "华硕", "显示屏": "戴尔", "鼠标": "罗技", "键盘": "雷蛇" }
  13. //遍历对象的属性
  14. for (var item in myObj) {
  15. console.log(myObj[item]);
  16. }
  17. //华硕 显示屏 戴尔 罗技 雷蛇
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议