1、Object类型
1)使用new运算符
   var box = new Object();===》等同于 var box = Object();(省略new关键字)
   box.name = "张三";// 创建属性字段
   box.age = 18;// 创建属性字段
2)字面量表示法
   var box ={
       name :"张三",  //创建属性字段
       age : 18
   }
3)字符串式属性字段
   var box ={
       'name' :"张三",  //创建字符串式属性字段
       'age' : 18
   }
4)声明空对象再以点符号赋值属性
  var box = {};//声明空对象
  box.name = "张三",//给属性赋值
  box.age = 18
  alert(box.name+','+box['age']);//注意点属性和方括号的输出方式
5)给对象创建方法
  var box = {
 
  run:function(){
     return '运行对象中的方法'
   }
 }
 alert(box.run());
6)使用delete删除对象属性
delete box.name;
eg. function box(obj){  //参数是一个对象
   if(obj.name!=undefined)//判断属性是否存在
   alert(obj.name);  
   if(obj.age!=undefined)
   alert(obj.age);
  
 }
box({          //调用函数并传参
     name:'李四',
     age:18
  })
2、Array类型
1)使用new关键字创建数组 new可省略
var box = new Array();//创建一个数组
var box = new Array(10);//创建一个数组含有10个元素
var box = new Array('张丹',24,'程序员','云南');//创建一个数组并分配好了元素
2)使用字面量创建数组
var box =[];
var box =['张丹',24,'程序员','云南'];
3)使用索引下标来获取数组值
alert(box[1]);
box[3]='重庆';//改变第4个数组的值
box[4]='一年';//增加第5个元素
4)使用legth属性获取数组长度
alert(box.legth);
5)较复杂的数组
var box = [
   {    //第一个元素是对象
     name:'李四',
     age:25,
     run :function(){ //对象中含有方法
       alert('run了')
    }
   },
   ['张丹',24,'程序员','云南'], //元素2数组
   '上海', //元素3字符串
    25+30, //元素4数值
   new Array(1,2,3) //元素5数组
 ];
  alert(box)
3、对象中的方法
1)转换方法:toLocaleString()、toString、valueOf()方法,默认情况下会以逗号隔开
var box = ['张三','计算机',18];
alert(box); //隐式调用toString方法。['张三','计算机',18]
alert(box.toString());  //和valueOf返回一致 张三,计算机,18
alert(box.toLocaleString());//同上 张三,计算机,18
console.log(box9.valueOf());//['张三','计算机',18]
2)join():使用该方法可替换分隔符
console.log(box.join('|'));//张三|计算机|18
3)push():给数组末尾添加元素并返回长度
console.log(box.push('成都'));//4
4) pop():移除数组末尾的元素,并返回移除的元素
console.log(box.pop());//成都
5)unShift():数组开头添加两个元素
console.log(box.unshift('2年','男'));//5
6)shift():移除数组开头的元素,并返回移除的元素
console.log(box.shift());//2年
7)reverse():逆向排序,并返回排序后的数组
console.log(box.reverse());//18,计算机,张三,男
8)sort():从小到大排序,并返回排序后的数组(当数组和字符串排序时这样使用是错的)
console.log(boc.sort());//18,张三,男,计算机
9)concat():可基于当前数组创建一个新数组
var box = ['山东','成都','贵阳'];
var box2 = box.concat('大厦');
console.log(box2);//山东,成都,贵阳,大厦
10)slice():基于当前数组获取指定区域元素并创建一个新数组
var box2 = box.slice(1);//表示从下标1开始截取
console.log(box2);//成都,贵阳,大厦

js基础——对象和数组的更多相关文章

  1. js获取对象、数组的实际长度,元素实际个数

    /*获取对象.数组的长度.元素个数 *@param obj 要计算长度的元素,可以为object.array.string */ function count(obj){ var objType = ...

  2. js实现对象或者数组深拷贝

    今天遇到个问题,就是vue绑定的数组在push中所有的数组都会跟着改变.这个主要是因为 JavaScript中对象或者数组等引用类型,直接拷贝,改变一个另外一个也会改变: 有个简单的方法就是先转换为字 ...

  3. JS中对象与数组(大括号{}与中括号[])

    一.{ } 大括号,表示定义一个对象,大部分情况下要有成对的属性和值,或是函数. 如:var LangShen = {"Name":"Langshen",&qu ...

  4. js基础-对象

    对象是一组属性方法的无序集 除了字符串.数值类型.布尔类型.null.undefined 之外的其他都是对象类型 对象都是引用类型 Object类型对象.数组类型对象 如果一个普通函数前面加了new ...

  5. JS的对象、数组等处理方法:解构

    对象方法简写 你可以在定义方法时省略function和 :: const obj = { insteadOfThis: function() { // do stuff }, youCanDoThis ...

  6. JS遍历对象和数组总结

    在日常工作过程中,我们对于javaScript遍历对象.数组的操作是十分的频繁的,今天把经常用到的方法总结一下! 一.遍历对象 1.使用Object.keys()遍历 返回一个数组,包括对象自身的(不 ...

  7. JS去除对象或数组中的空值('',null,undefined,[],{})

    javascript去掉对象或数组中的'',null,undefined,[],{}.思路就是创建一个新的空对象,然后对传入的对象进行遍历,只把符合条件的属性返回,保留有效值,然后就相当于把空值去掉了 ...

  8. JS基础用法-向数组指定位置插入对象

    在做省市区三级联动的时候,需要在省市区默认位置放上请选择字样. 由于后台的API接口返回的没有请选择字样,那么就需要给返回的数组手动增加请选择 代码如下 // 原来的数组 var array = [& ...

  9. JS遍历对象或者数组

    一.纯js实现 <script> var obj = {"player_id":"GS001","event_id":" ...

随机推荐

  1. BZOJ 3057圣主的考验题解

    老师居然考这么毒瘤的题目!!!!! 很容易想到dp,f[i][j]表示有i个节点,左子树的最深深度为j的方案数 枚举左子树有多少节点然后转移,复杂度为n^3 T飞~ 我们考虑到有深度为h的树的节点有多 ...

  2. 阿里云SaaS生态战略发布,用宜搭5分钟部署OCR文字识别

    7月26日,在阿里云合作伙伴峰会上,阿里云发布SaaS生态战略:通过SaaS加速器为合作伙伴提供应用开发.集成.上云.售卖的全链路解决方案,提升开发效率和集成效率,缩短商业化周期. 作为阿里SaaS加 ...

  3. Spring CommonsMultipartResolver上传文件小结

    自从业至今,文件上传与IO流之类的调用,一直是理解比较模糊的地方,大多就这网上搜到的资料抄抄改改草草了事,内部原理一直不甚了解,今日我们通过Spring的CommonsMultipartResolve ...

  4. More Effective C++: 02操作符

    05:谨慎定义类型转换函数 有两种函数允许编译器进行隐式类型转换:单参数构造函数(single-argument constructors)和隐式类型转换运算符.单参数构造函数是指只用一个参数即可以调 ...

  5. PLAY2.6-SCALA(七) Streaming HTTP response

    1.从HTTP1.1开始,服务端为了在single connection下对HTTP请求及响应提供服务,需要在response中提供响应的Content-Length. 默认情况下,不需要显示的指明C ...

  6. PLAY2.6-SCALA(三) 数据的返回与保存

    1.修改默认的Content-Type 自动设置内容类型为text/plain val textResult = Ok("Hello World!") 自动设置内容类型为appli ...

  7. 【Leetcode链表】分隔链表(86)

    题目 给定一个链表和一个特定值 x,对链表进行分隔,使得所有小于 x 的节点都在大于或等于 x 的节点之前. 你应当保留两个分区中每个节点的初始相对位置. 示例: 输入: head = 1->4 ...

  8. Python之路,Day1 - Python基础1 --转自金角大王

    本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...

  9. 【uml】之类图中的关系 标签: uml图形类 2014-11-29 09:02 1198人阅读 评论(23)

    uml早就画完了图,但是自己迟迟没有总结,因为总觉的自己把握的不到位,虽然现在也还是不到位,废话少说,上篇博客总结了用例图中的几种关系,这篇就讨论一下类图中的几种关系. 在uml的所有图中,就我目前的 ...

  10. CAD专用卸载修复工具,一键完全彻底卸载删除CAD软件的专用卸载工具

    Autodesk CAD卸载工具(AUTO Uninstaller)是专门为了针对Autodesk CAD软件卸载不干净而导致CAD安装失败问题进行研发的Autodesk CAD一键卸载工具.现在虽然 ...