C语言学习网

JavaScript类型概念及使用的方法

发表于:2022-11-27 作者:安全数据网编辑
编辑最后更新 2022年11月27日,这篇文章主要介绍"JavaScript类型概念及使用的方法",在日常操作中,相信很多人在JavaScript类型概念及使用的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家

这篇文章主要介绍"JavaScript类型概念及使用的方法",在日常操作中,相信很多人在JavaScript类型概念及使用的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"JavaScript类型概念及使用的方法"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创建数组的第二种基本方式是使用数组字面量表示法。数组字面量由一对包含数组项的方括号表示,多个数组之间以逗号隔开,如下所示:

var colors=["red","blue","green"]j //创建一个包含3个字符串的数组

var names=[]; //创建一个空数组

var values=[1,2,]; //不要这样!这样会创建一个包含2或3项的数组

var options=[,,,,]; //不要这样!这样会创建一个包含5或6项的数组

以上代码的第一行创建了一个包含3个字符串的数组。第二行使用一对空方括号创建了一个空数组。第三行展示了在数组字面量的最后一项添加逗号的结果:在IE中,values会成为一个包含3个项且每项的值分别为1、2和undefined的数组;在其他浏览器中,values会成为一个包含2项且值分别为l和2的数组。南昌网络公司做网站公司提醒广开发人员,出现这种情况的主原因是IE的ECMAScript实现在数组字面量方面存在bug。由于这个bug导致的另一种情况如最后一行代码所示,该行代码可能会创建包含5项的数组(在Firefox. Opera. Safari和Chrome中),也可能会创建包含6项的数组(在IE中)。在像这种省略值的情况下,每一项都将获得undefined值;这个结果与调用Array构造函数时传递项数在逻辑土是相同的。但是由于IE的实现与其他浏览器不一致,因此我们强烈建议不要使用这种语法。

与对象一样,在使用数组字面量表示法时,也不会调用Array构造函数(Firefox除外)。

在读取和设置数组的值时,要使用方括号并提供相应值的基于0的数字索引,如下所示:

var colors=["red","blue","green"]; //定义一个字符串数组

alert (colors[O]); //显示第一项

colors [2]="black"; //修改第三项

colors[3]="brown"; //新增第四项

方括号中的索引表示要访问的值。如果索引小于数组中的项数,则返回对应项的值,就像这个例子中的colors[o]会显示"red"一样。设置数组的值也使用相同的语法,但会替换指定位置的值。如果设置某个值的索引超过了数组现有项数,如这个例子中的colors[3]所示,数组就会自动增加到该索引值加l的长度(就这个例子而言,索引是3,因此数组长度就是4)。

数组的项数保存在其length属性中,这个属性始终会返回0或更大的值,如下面这个例子所示:

var colors=["red","blue","green"]; //创建一个包含3个字符串的数组

var names=[]; //创建一个空数组

alert(colors.length); //3

alert(names.length); //0

数组的length属性很有特点--它不是只读的。因此,通过设置这个属性,可以从数组的末尾移除项或向数组中添加新项。请看下面的例子:

var colors=["red","blue","green"]; //创建一个包含3个字符串的数组

colors.length = 2;

alert(colors(2)); //undefined

这个例子中的数组colors -开始有3个值。将其length属性设置为2会移除最后一项(位置为2的那一项),结果再访问colors[2]就会显示unde fined了。如果将其length属性设置为大于数组项数的值,则新增的每一项都会取得undefined值,如下所示:

var colors=["red","blue","green"]; //创建一个乱会3个字符串的数组

colors.length = 4;

alert(colors(3)); //undefined

在此南昌网页设计公司工程师提示,虽然colors数组包含3个项,但把它的length属性设置成了4。于是,这个数组中位置为3的那一项就获得了unde fined值,数组的项数也增加到4。 利用length属性也可以方便地在数组末尾添加新项,如下所示:

var colors=["red","blue","green"]; //创建一个包含3个字符串的数组

colors[colors.length] = "black"; //(在位置3)添加一种颜色

colors[colors.length] = "brown"; //(在位置4)添加一种颜色

由于数组最后一项的索引始终是length-l,因此下一个新项的位置就是length。每当在数组末尾添加一项后,其length属性都会自动更新以反应这一变化。换句话说,上面例子第二行中的 colors[colors .length]为位置3添加了一个值,最后一行的colors[ colors .length]则为位置4添加了一个值。当把一个值放在超出当前数组大小的位置上时,数组就会重新计算其长度值,即长度值等于最后一项的索引加l,如下面的例子所示:

var colors=["red","blue","areen"]; //创建一个包含3个字符串的数组

colors[99] = "black"; //(在位置99)添加一种颜色

alert(colors.length); //100

在这个例子中,我们向colors数组的位置99插入了一个值,结果数组新长度(length)就是100 (99+1)。而从位置3到位置98的每一项,都将获得undefined值。

到此,关于"JavaScript类型概念及使用的方法"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0