数组/字符串/ Math / 方法示例
数组 Array
concat 数组的合并
<script> var north = ["北京","上海","深圳"]; var south = ["山东","天津","抚顺"]; var newCity = north.concat(south); console.log(newCity) </script> // ["北京", "上海", "深圳", "山东", "天津", "抚顺"]
join() 将数组中的元素使用指定的字符串连接起来,形成一个新的字符串
var score = [98,78,76,100,0]; var str = score.join('|'); console.log(str);//98|78|76|100|0
toString 将数组转换成字符串
var score = [98,78,76,100,0]; //toString() 直接转换为字符串 每个元素之间使用逗号隔开 var str = score.toString(); console.log(str);//98,78,76,100,0
slice(start,end) :返回数组的一段,左闭右开
var arr = ["张三","李四","王五",赵六]; var newArr = arr.slice(1,3); console.log(newArr); //["李四",王五] 顾头不顾尾
//x.slice(start, end) // //使用注解 // //x代表数组对象 //start表示开始位置索引 //end是结束位置下一数组元素索引编号 //第一个数组元素索引为0 //start、end可为负数,-1代表最后一个数组元素 //end省略则相当于从start位置截取以后所有数组元素 var arr1=['a','b','c','d','e','f','g','h']; var arr2=arr1.slice(2,4); var arr3=arr1.slice(4); var arr4=arr1.slice(2,-1); alert(arr2.toString()); //结果为"c,d" alert(arr3.toString()); //结果为"e,f,g,h" alert(arr4.toString()); //结果为"c,d,e,f,g"
pop 移除数组中的最后一个元素
var arr = ["张三","李四","王五","赵六"]; var newArr = arr.pop(); console.log(newArr); //["张三","李四","王五"]
push() 向数组的最后添加一个元素
var arr = ['张三','李四','王文','赵六']; var newArr = arr.push('铁锤妹妹'); console.log(newArr); //["张三", "李四","王文","赵六","铁锤妹妹"]
reverse() 翻转数组
var names = [11,86,73,99]; //翻转数组 names.reverse(); console.log(names); // 99,73,86,11
sort() 排序数组元素
var names = ['alexer','xiaoma','tanhuang','abngel']; names.sort(); console.log(names); // ["alexer", "angle", "tanhuang", "xiaoma"] // 根据首字母的顺序
var arr = [33,12,111,444]; arr.sort(); console.log(arr); // [111,12,33,444] // 在sort()进行排序的时候回调用 toString()函数将其转化成字符串在进行比较,是按照 ASCII进行比较
splice() 删除子元素
//x. splice(start, deleteCount, value, ...) //使用注解 //x代表数组对象 //splice的主要用途是对数组指定位置进行删除和插入 //start表示开始位置索引 //deleteCount删除数组元素的个数 //value表示在删除位置插入的数组元素 //value参数可以省略 var a = [1,2,3,4,5,6,7,8]; a.splice(1,2); alert(a.toString());//a变为 [1,4,5,6,7,8] a.splice(1,1); alert(a.toString());//a变为[1,5,6,7,8] a.splice(1,0,2,3); alert(a.toString());//a变为[1,2,3,5,6,7,8]
shift 和 unshift : 删除/添加第一个元素
//x.unshift(value,...) //x.shift() //使用注解 //x代表数组对象 //value可以为字符串、数字、数组等任何值 //unshift是将value值插入到数组x的开始 //shift是将数组x的第一个元素删除 var arr1=[1,2,3]; arr1.unshift(4,5); alert(arr1); //结果为"4,5,1,2,3" arr1. unshift([6,7]); alert(arr1); //结果为"6,7,4,5,1,2,3" arr1.shift(); alert(arr1); //结果为"4,5,1,2,3"
isArray() 判断是否是数组
布尔类型值 = Array.isArray(被检测的值) ;
总结js中数组的特性
// js中数组的特性 //java中数组的特性, 规定是什么类型的数组,就只能装什么类型.只有一种类型. //js中的数组特性1: js中的数组可以装任意类型,没有任何限制. //js中的数组特性2: js中的数组,长度是随着下标变化的.用到多长就有多长. var arr5 = ['abc',123,1.14,true,null,undefined,new String('1213'),new Function('a','b','alert(a+b)')]; /* alert(arr5.length);//8 arr5[10] = "hahaha"; alert(arr5.length); //11 alert(arr5[9]);// undefined */
字符串 String
chatAt() 返回指定索引的位置的字符
var str = 'hello'; var charset = str.charAt(1); console.log(charset); // e
length 获取字符串的长度
var str = "我的天呢,a是嘛,你在说什么呢?a哈哈哈"; console.log(str.length); // 20
trim 去除字符串两边的空格
var str = " hello "; console.log(str.trim()); // hello
concat 返回字符串值,表示两个或者多个字符串的拼接
var str1 = 'Lo'; var str2 = 've'; console.log(str1.concat(str2,str2)); // Love
replace(a,b) 将字符串a替换成字符串b
var a = '1234567755'; var newStr = a.replace("4567","****"); console.log(newStr);//123****755
indexof() 查找字符串的下标,如果找到返回字符串的下标,找不到则返回-1
var str = "hello"; console.log(str.indexOf('e')); //2 console.log(str.indexOf('p')); //-1
slice(start,end) 分割字符串,左闭右开
var str = "大仲马"; console.log(str.slice(1,2)); // 仲
splice("a",1) 以字符串a分割字符串,并返回新的 数组 .如果第二个参数没有写,便是返回整个数字,如果定义了个数,则返回数组的最大长度.
var str = "我的天呢,a是嘛,你在说什么呢?a哈哈哈"; console.log(str.split("a")); // ["我的天呢,", "是嘛,你在说什么呢?", "哈哈哈"] console.log(str.split("a",2)); // ["我的天呢,", "是嘛,你在说什么呢?"]
substr(start,end) 左闭右开
var str = '我的天呢,a是嘛,你在说什么呢?a哈哈哈'; console.log(str.substr(0,4)); //我的天呢
toLowerCase() 转小写
var str = 'XIAOMAGE'; console.log(str.toLowerCase()); //xiaomage
toUpperCase() 转大写
var str = 'xiaomage'; console.log(str.toUpperCase()); //XIAOMAGE
toString() 将number类型转化成字符串类型
//1.将number类型转换成字符串类型 var num = 132.32522; var numStr = num.toString() console.log(typeof numStr)
Math 内置对象
Math.ceil() 向上取整,"天花板函数"
var x = 1.234; //天花板函数 表示大于等于 x,并且与它最接近的整数是2 var a = Math.ceil(x); console.log(a); //2
Math.floor() 向下取整,"地板函数"
var x = 1.234; // 小于等于 x,并且与它最接近的整数 1 var b = Math.floor(x); console.log(b); //1
Math.max/min 求两个数的最大值/最小值
//求 两个数的最大值 最小值 console.log(Math.max(2,5)); //5 console.log(Math.min(2,5)); //2
Math.random() 随机数
var ran = Math.random(); console.log(ran); // [0,1) 去0-1之间的随机数,可以取到0,但是不能取到1
min-max 之间的随机数 : main+Math.random()*(max-min)
//该对象中的属性方法 和数学有关. abs(x) 返回数的绝对值。 exp(x) 返回 e 的指数。 floor(x)对数进行下舍入。 log(x) 返回数的自然对数(底为e)。 max(x,y) 返回 x 和 y 中的最高值。 min(x,y) 返回 x 和 y 中的最低值。 pow(x,y) 返回 x 的 y 次幂。 random() 返回 0 ~ 1 之间的随机数。 round(x) 把数四舍五入为最接近的整数。 sin(x) 返回数的正弦。 sqrt(x) 返回数的平方根。 tan(x) 返回角的正切。 //方法练习: //alert(Math.random()); // 获得随机数 0~1 不包括1. //alert(Math.round(1.5)); // 四舍五入 //练习:获取1-100的随机整数,包括1和100 //var num=Math.random(); //num=num*10; //num=Math.round(num); //alert(num) //============max min========================= /* alert(Math.max(1,2));// 2 alert(Math.min(1,2));// 1 */ //-------------pow-------------------------------- alert(Math.pow(2,4));// pow 计算参数1 的参数2 次方.