一、字符串
单元格信息地表示—字符串(String)
- 在JavaScript中,可以使用String类型存储字符
- 首字符从位置0开始
- 字符串变量由双引号或单引号声明
var text = "abcdefg";
获得字符串的长度
- 通过字符串变量的length属性获得
- str.length;
获得指定位置的字符
- 通过字符串变量的charAt(n)方法获得
- str.charAt(n); --等效-- str[n];
获得指定子串首次出现的位置
- indexOf()方法
- 返回值为首次出现的位置下标,下标从0开始
- 若检索的字符串值没有出现,返回-1
根据位置提取一段子串
- 通过字符串变量的slice(start,end)方法
从start开始(包括start)到end结束(不包括end)为止的所有字符
- 返回值包含提取部分的新的字符串
实现文本缩略
- 求出字符串长度 var len = text.length;
- 比较帖子长度与5的关系
- 截取前5个字符 var = newText = text.slice(0,5);
- 加上" " 符号 newText += " … ";
把字符串分割成数组
- 通过字符串变量的split(separator,howmany)方法
- str = “1-2-3-4-5-6-7”;
str.split("-"); —> [“1” , “2” , “3” , “4” , “5” , “6” , “7”];
把字符串转换成大写
- 通过字符串变量的toUpperCase()方法
把字符串转换成小写
- 通过字符串变量的toLowerCase()方法
注: 字符串是不可更改的,所以字符串的方法返回都是全新的字符串,没有改变原始字符串。
二、数组
数组 :用来在单独的变量中存储一系列的值
数组(Array)
定义数组
- 方式一 : 通过 [ ] 方式
例: var arr1 = [ ‘a’ , ‘b’ , ‘c’ ]; - 方式二 :通过newArray方式
例:var arr2 = newArray( ‘a’ , ‘b’ , ‘c’);
多条记录的表示 ---- 二维数组
var msg = [
['张三' , '男' , 18],
['李四' , '女' , 16],
......
];
数组中的元素可以是不同的数据类型
一维数组
- arr1[0]
- arr1[1]
二维数组
- msg[0][0]
- msg[0][1]
数组的length属性
var num = arr1.length;(返回数组长度的整数值)
数组长度可变
<script>
var aColors = ["red","green","blue"];
alert(aColors.length); // output -> 3
aColors[3] = "purple";
alert(aColors.length); // output -> 4
</script>
获取指定值出现的位置
- indexOf()方法
数组元素排序
- 通过数组变量的sort()方法
- 默认从小到大
颠倒数组中元素的顺序
- 通过数组变量的reverse() 方法
sort()方法
只能排序10以内的数组。如果需要排序的数组中存在大于10的数字,我们需要向sort()方法中传入回调函数:
array.sort(function(a,b){
return a - b;
});
对于传入的两个参数:a代表的是找到数组中的当前项,b代表的是当前项的后一项
- return a - b : 如果a大于b,返回结果,a与b交换位置。如果a小于b,那么a和b位置不变。这是升序排序。
- return b - a : 如果b大于a,返回结果,a与b交换位置。如果a小于b,那么a和b的位置不变。这是降序排序。
数组转换成字符串
- 通过数组变量的join(separator)方法
- 参数:指定使用的分隔符。如果省略,则使用逗号作为分隔符。
- 返回一个字符串
arr = [1,2,3,4,5,6,7];
arr.join("-"); // ---->"1-2-3-4-5-6-7"
删除元素
删除数组的第一个元素
- 通过数组变量的shift()方法
- 返回值为删除的数组的第一个元素
- length自动减1
删除数组的最后一个元素
- 通过数组变量的pop()方法
- 返回值为删除的数组的最后一个元素
- length自动减1
添加元素
向数组的开头添加元素
- 通过数组变量的unshift()方法,返回值为新的长度
向数组的末尾添加元素
- 通过数组变量的push()方法,返回值为新的长度
数组拼接
- 通过数组变量的concat(arr1,arr2,…)方法,返回值为新的数组
向/从数组中添加/删除项目
- 通过数组变量的 splice(index,howmany,item1,…,itemX)方法
- 返回值为包含被删除项目的新数组
三、把数据写入表格
使用for循环遍历数组
for(var index = 0; index < arr.length; index++){
//依次处理每个arr[index]
}
forEach函数
- 功能:对数组的每个元素执行依次提供的函数
- 语法:arr.forEach(function(currentValue,index,arr){})
- currentValue 必需。当前元素。
- index 可选。当前元素的索引值。
- arr 可选。当前元素所属的数组对象。
//IE8及以下不兼容
var arr = [1,2,3,4];
arr.forEach(function(value,index,arr){
console.log(value); //数组元素
console.log(index); //数组下标
console.log(arr); //原始数组
})
数组小结
数组中的元素可以是不同数据类型
要清楚数组方法有没有改变原始数组
本节全部函数