zoukankan      html  css  js  c++  java
  • JavaScript学习笔记——语法基础1.2

    一、数组

    1、通常情况下,一个变量只能有一个值,若想拥有多个值,就需要使用数组,换句话来说,数组是一个特殊的容器,它可以根据需求存放一个或者多个值。
    2、数组可以用关键字Array来声明,声明的同时,可以设定它的长度length。

    var myArray = Array(3);
    document.write(myArray.length); //输出3

    3、我们可以在声明数组的同时对它进行填充,也可以在声明之后进行填充,当然,我们需要对新填充的值指定存放位置,需要注意下标是从0开始计数的。

    JavaScript(1)var myBooks = Array("JavaScript ","canvas");
    document.write(myBooks+'<br/>'); //输出JavaScript canvas 并换行
    document.write(myBooks[0]+'<br/>');//输出JavaScript 并换行
    var myArray = Array();
    myArray[0] = "筱雨生";
    document.write(myArray); //输出筱雨生

    4、还有一种不需要通过Array关键字来创建数组的方式

    var myArray = ['Marry',24,true];
    alert(typeof(myArray)); //object
    alert(typeof(myArray[0])); //string
    alert(typeof(myArray[1])); //number
    alert(typeof(myArray[2])); //boolean
    document.write(myArray[0]); //输出Marry

    5、下面还有一种比较特殊的创建方法,它的下标不是数字,而是String

    var iMac = Array();
    iMac['Name'] = 'Jobs';
    iMac['year'] = 1955;
    iMac['living'] = false;
    console.log(iMac); //[Name: "Jobs", year: 1955, living: false]

    没错,这种方法的可读性较强,但是它并不是一个Good Habit。

    二、对象

    1、对象与数组比较相似,也是用一个变量来表示一组值,JavaScript对象通常是用关键字Object来声明的。

    var myObj = Object();
    myObj.name = "Tatsuya";
    myObj.year = 1990;
    alert(typeof(myObj)); //输出Object

    2、创建对象的方式不是唯一的,下面这个方法更加高效,即花括号语法:{ propertyName:value, propertyName:value }

    var myObj = { name:"Tatsuya", year:1990};
    alert(typeof(myObj)); //输出Object

    由上面的两个例子,我们可以发现对象与数组之间的微妙关系,这种微妙关系具体怎么去描述呢,有待我们去验证。

    3、对象中的属性与变量的命名规则有相同之处,属性值可以是任何JavaScript值,包括其他对象。

    var myObj = {};
    myObj.name = 'Tatsuya';
    myObj.book = [];
    myObj.year = 1900;
    myObj.childObj = {};
    console.log(typeof(myObj)); //object
    console.log(typeof(myObj.name)); //string
    console.log(typeof(myObj.book)); //object
    console.log(typeof(myObj.year)); //number
    console.log(typeof(myObj.childObj)); //object

    4、到现在,我们可以了解到,数组可以放入对象里,对象还可以放入对象里,其实,对象也可以放入到数组中,下面我们做进一步的验证。

    var myObj = {
        name:"Tatsuya",
        year:1990,
        living:true
        }
    alert(typeof(myObj)); //输出Object
    var myArray = Array();
    myArray.push(myObj);
    //var myArray = [myObj];
    alert(typeof(myArray));//输出Object

    三、题外话

    日复一日,年复一年,点点滴滴,日久生情……

  • 相关阅读:
    tsm 存放磁带到带库
    tsm 切记
    添加路由时啥时候是dev啥时候是gw
    网卡上绑定多个IP地址
    更改本地环回地址引发的血案
    自学网络 arp_ignore/arp_announce
    do_try_to_free_pages
    如何用ssh实现端口的映射
    显示系统中所有的socket信息
    ifstat查看网络流量的原理
  • 原文地址:https://www.cnblogs.com/yushengxiao/p/4709661.html
Copyright © 2011-2022 走看看