美文网首页
JavaScript对象和数组

JavaScript对象和数组

作者: 苹果王子刘泽庆 | 来源:发表于2020-11-15 22:59 被阅读0次

数字、布尔值、字符串等是构建数据结构的原子(Atom)。但是很多复杂的信息仅靠原子无法进行描述。
对象允许程序员对值(包括其他对象)进行分组,以构建更加复杂的结构。

数据集

我们要处理大量数字数据,首先需要找到一种在计算机内存中表示它们的方法。
假设我们目前仅使用基础的原子数据结构来存储2,3,4,5这一组数字。则我们首选的是字符串类型,因为字符串可以有任何长度,我们可以创建一个字符串变量并把上面的这些数字保存其中

let str1 = "2 3 4 5"

这确实可以实现存储,但是当我们想要使用它时,麻烦就来了。因为这是一个字符串,我们需要想办法把它们转换为数字,才能更好的使用它们。这是十分让人头疼的。
但是幸运的是,JavaScrip提供了更加方便的存储数据类型,那就是:
数组(array),这一数据类型专门用来存储值序列。
写法是:

 let listOfNumbers = [2,3,4,5];
console.log(listOfNumbers[2]); //输出4
console.log(listOfNumbers[0]); //输出2

我们通过数组索引来访问数组中的数据,也就是使用变量名+[索引]
就像上面的代码中那样。
需要注意的是,数组的第一个索引是0,而不是1。就像上面代码中显示的那样,索引0(listOfNumbers[0])指向的是第一个元素(2),索引2(listOfNumbers[2])指向的是第3个元素(4)。

属性

在JavaScript中,几乎所有的JavaScript值都具有属性,但nullundefined除外。如果访问这两种值的属性,则会出现错误。

数组的length属性用来计算数组中有多少元素。

下图为node.js终端中测试的结果:


image.png

在JavaScript中访问属性的主要方法有两种:

  1. 使用句点(.) 如: value.x
    2.使用方括号([]) 如: value[x]

value.x 和 value[x]都访问值上的属性,但不一定是相同的属性。
不同之处在于如何解释x:
使用句点时,点后面的单词是属性的文字名称。如:value.x获取名为"x"的值的属性。
使用方括号时,将计算括号之间的表达式以获取属性名称。 如:value[x]尝试计算表达式x并使用转换为字符串的结果作为属性名称。
注意:
点表示法仅适用于其名称看起来像有效绑定名称的情况。
数组中的元素存储为数组的属性,使用数字作为属性名称。因为点表示法不能与数字一起使用,因此需要用方括号法来获取数组中的元素。
数组的length属性名称是一个有效的绑定名称,我们事先已经知道它的名称,因此要获取数组长度,一般写成array.length,因为这比array["length"]更容易书写。

相关文章

网友评论

      本文标题:JavaScript对象和数组

      本文链接:https://www.haomeiwen.com/subject/lspobktx.html