js字符串和数组笔记

字符串就是零个或多个排在一起的字符,放在单引号或双引号之中。如果要在单引号字符串的内部使用单引号,必须在内部的单引号前面加上反斜杠,表示转义。

连接运算符(+)可以连接多个单行字符串,将长字符串拆成多行书写,输出的时候也是单行。

可以使用数组的方括号运算符,返回字符串某个位置的字符。length属性返回字符串的长度,该属性是无法改变的。

 

数组是按次序排列的一组值。每个值的位置都有编号(从0开始),整个数组用方括号表示。任何类型的数据,都可以放入数组。

 

var arr = [{a: 1}, [1, 2, 3], function() {return true;}];

 

上面数组arr3个成员依次是对象、数组、函数。

 

数组一种特殊的对象它的键名是0开始按次序排列的一组整数。下面代码的Object.keys方法返回数组的所有键名"0""1""2"

 

var arr = ['a', 'b', 'c'];

 

Object.keys(arr); // ["0", "1", "2"]

 

由于数组成员的键名是固定的,因此数组不用为每个元素指定键名,而对象的每个成员都必须指定键名。

JavaScript语言规定对象的键名一律为字符串,所以数组的键名是字符串之所以可用数值读取,是因为非字符串的键名会被转为字符串。

 

对象有两种读取成员的方法:点结构(object.key)和方括号结构(object[key])。但是,对于数值的键名,不能使用点结构。

 

var arr = [1, 2, 3];

 

arr.0 // SyntaxError

 

上面代码中,arr.0的写法不合法,因为单独的数值不能作为标识符(identifier)。所以,数组成员只能用方括号arr[0]表示(方括号是运算符,可以接受数值)。

 

数组的length属性返回数组的成员数量等于键名中的最大整数加上1

length属性是可写的将数组清空可以length属性设为0

数组是一种动态的数据结构,可以随时增减数组的成员。

 

for...in循环可以遍历数组。

 

var a = [1, 2, 3];

 

for (var i in a)

 

{

 

  console.log(a[i]);//1 2 3

 

}

 

数组的forEach方法,也可以用来遍历数组。

 

var colors = ['red', 'green', 'blue'];

 

colors.forEach(function (color) {

 

  console.log(color);//red green blue

 

});

 

如果数组的某个位置是空元素,两个逗号之间没有任何值,表明数组存在空位

组的空位不影响length属性如果最后一个元素后面有逗号,不会产生空位。

单独读取数组的空位返回undefined。使用delete命令删除一个数组成员,会形成空位,并且不会影响length属性。

如果数组的某个位置是空位,使用forEach方法遍历空位会被跳过。

 

posted @ 2020-03-27 17:42  zhstudy  阅读(223)  评论(0编辑  收藏  举报