javaScript(api学习)

数组有关的api

创建数组

var arr = new Array();//创建新的空数组

数组的增删改查

var arr = [1,2,3,4,5];
delete arr[2];//arr = [1,2,undefined,4,5];

delete可以删除,但只删除值,位置会被undefined填充,形成稀疏数组

//查数组最后一位元素
console.log(arr[arr.length-1]); //通过更改length清空数组
arr.length = 0;

注:

  1. 更改数组长度的方法在数组索引不为数字的时候length失效

  2. 在数组处在稀疏数组的状态,我们通过length操作的时候会出问题

indexOf();

作用:可返回数组中某个指定元素的位置,若没有这个元素就会返回-1

var arr = [2,5,6,8,9,10,13];
arr.indexOf(9);//返回4
arr.indexOf(7);//返回-1

push(),pop(),unshift(),shift()

push();在数组的最后添加一个或多个值,返回数组的新的长度

pop();删除并且返回数组最后一个元素

unshift();可以向数组的开头添加一个或者多个元素,返回新长度

shift();删除数组的第一个元素,并且返回删除的元素

var arr = [5,6,7,8];

var info1 = arr.push(9);//arr=[5,6,7,8,9];
console,log(info1);//打印为5 var info2 = arr.pop();//arr = [5,6,7,8];
console,log(info2);//打印为9 var info3 = arr.unshift(4);//arr = [4,5,6,7,8];
console.log(info3);//打印为5 var info4 = arr.shift();//arr[5,6,7,8];
console.log(info4);//打印为4

forEach()

作用:用于调用每个元素,并将元素传递给回调函数

参数:forEach(callback);

callback有三个参数:

  1. 第一个表示正在处理的当前元素 (必选)

  2. 第二个参数表示数组中正在处理元素的索引值

  3. 第三个参数表示正在操作的数组

forEach();函数return值为undefined

var arr1 = [1,2,3,4,5,6];
var arr2 = []; arr1.forEach(function(item){
arr2.push(item);
}) console.log(arr2);//[1,2,3,4,5,6]

map();

作用:返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值

var arr1 = [2,4,6,8];

var info = arr1.map(function(item){
var num = item * 2;
return item;
}) console.log(info);//[4,8,12,16]

reduce();

作用:接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

这里的callback的参数多了一个:

accumulator:累加器(必选)

var arr = [2,4,6,8,9,10];

var info = arr.reduce(function(add,item){
return add + item;
}) console.log(info);//39

filter();(函数过滤器)

作用:创建一个新的数组,新数组中的元素是通过检查指定数组中符和条件的所有元素

var arr1 = [1,2,3,5,6,8,9,12];

var info = arr1.filter(function(item){
if(item % 2 === 0){
return true;
}
}) console.log(info);//[2,6,8,12]

every();

作用:用于检测数组,新数组中的所有元素是否都符合条件。

注:

  1. 如果数组中有一个元素不满足,则整个表达式返回false.且剩余元素不会进行检测。

  2. 如果所有元素都满足条件,则返回true。

var arr = [2,4,5,6,8,10];
//判断是否全是偶数
var info = arr.every(function(item){
if(item % 2 === 0){
return ;
}
}) console.log(info);//false

some();

用于检测数组所有元素是否符和指定条件

注:

  1. 如果有一个满足条件,则表达式返回true,剩余的元素不会在执行检测

  2. 如果所有元素满足都满足条件,则返回false。

var arr = [2,4,5,6,8,10];
//判断是否有奇数
var info = arr.some(function(item){
if(item % 2 !== 0){
return;
}
})

join();

用于把数组中的所有的元素转换成一个字符串

参数(可选):

指定一个字符串来分割数组的每个元素。如果需要,将分割转换为字符串。
如果缺省该值,数组元素用逗号隔开,如果是空字符串(""),则所有元素之
间都没有任何字符。
var arr = ['hello','world','!'];

var info = arr.join('');
console.log(info);//helloworld!

reverse();

用于颠倒数组中元素的顺序(更改初始数组)

var arr = [4,56,87,2,3];

arr.reverse();

console.log(arr);//[3,2,87,56,4]

sort();

对数组进行排序(更改初始数组)

参数callback:

  1. 第一个用于比较的元素

  2. 第二个用于比较的元素

var arr = [4,56,87,2,3];

arr.sort(function(arg1,arg2){
return arg1 - arg2 ;
}); console.log(arr);//[2,3,4,56,87];

concat(arr1,arr2,...);

用于连接两个或多个数组

var arr1 = ['a','b',2];
var arr2 = [1,'cb',45]; var info = arr1.concat(arr2); console.log(info);

slice();

可从已有的数组中返回选定的元素

两个参数:

  1. began:开始的索引

  2. end:结束的索引

tip: 包括开始不包括结束

var arr = [1,3,4,5,6,7];

var info = arr.slice(1,3);
console.log(info);//[3,4];

splice();

用于添加或删除数组中的元素(会改变原数组)

内含三个参数:

  1. 第一个是开始的索引

  2. 第二个是选中元素的个数

  3. 第三个是添加的元素

var arr = [1,3,4,5,6,7];

var info = arr.splice(1,1,'a');

console.log(info);//3
console.log(arr);//[1,'a',4,5,6,7]

isArray();

判断是不是数组

var arr = [1,3,4,5,6,7];

var info = Array.isArray(arr);

console.log(info);//true

String字符串api

charAt();

可返回指定位置的字符

var str = 'hello world';

var info = str.charAt(2);
console.log(info);//l

charCodeAt();

可返回指定位置的字符的Unicode编码

var str = 'hello world';

var info = str.charCodeAt(2);

console.log(info);//108

concat();

将多个字符串拼接

var str1 = 'hello';
var str2 = 'world';
var st3 = '!'; var info = str1.concat(str2,str3); console.log(info);//helloworld!

fromCharCode();

根据Unicode表的值创建一个字符

var str = String.fromCharCode(108);
console.log(str);

indexOf();

可以返回一个字符在字符串中首次出现的位置

var str = 'hello world';

var info = str.indexOf('l');
console.log(info);//2

lastIndexOf();

返回一个字符在字符串最后出现的位置

var str = 'hello world';

var info = str.lastIndexOf('l');
console.log(info);//9

match();

可以在字符串中检索指定的值(可以和正则配合)

var str = 'hello world';

var info = str.match('o');
console.log(info);//Array[0:'o',index:4,input:'hello world',length:1]

replace();

可以在字符串当中使用一些字符替换另一些字符(可以和正则搭配)

var str = 'hello world';

var info = str.replace('lo','**');
console.log(info);//hel** world

search();

用于在字符串当中检索查找指定的字符(可以和正则配合)

var str = 'hello world';

var info = str.search('o');

console.log(info);//4

slice();

可以从字符串中截取指定的字符

var str = 'hello world';

var info = str.slice(1,3);

console.log(info);//el

split();

可以把字符串分割成字符串

参数:

  1. 第一个参数表示控制的切割符

  2. 第二个参数表示数组里面的长度(可以存入几个数据)

var str = 'hello world !';

var info = str.split(' ',2);

console.log(info);//['hello','world'];

substr();

可以从字符串当中抽取从开始位置指定的个数的字符

参数:

  1. 第一个是截取位置

  2. 第二个是截取长度

var str = 'hello world';

var info = str.substr(2,2);

console.log(info);//ll

substring();

从开始和结束的中间截取字符串。

var str = 'hello world';

var info = str.substring(1,3);

console.log(info);//el

toLowerCase();

把字符串中的字符小写

var str = 'HELLO WOLRD';

var info = str.toLowerCase();

console.log(info);//hello wolrd;

toUpperCase();

把字符串大写

var str = 'hello world';

var info = str.toUpperCase();

console.log(info);//HELLO WORLD

Javascript数组与字符串常用api的更多相关文章

  1. 字符串、数组、对象常用API

    常用的字符串API  1.常见方法和属性 length 属性,获取字符串的字符数量 charAt(i) 返回给定位置的字符 charCodeAt( ) 返回给定位置的字符的字符编码 <scrip ...

  2. Javascript 数组 数字 字符串 时间等使用

    1.Javascript 数组API 1. //定义数组 2. var pageIds = new Array(); 3. pageIds.push('A'); 5. 数组长度 6. pageIds. ...

  3. 舌尖上的javascript数组和字符串基本操作

    Javascript数组基本操作 Javascript中的数组是一种特殊的对象,用来表示偏移量的索引是该对象的属性,索引可能是整数,然而这些数字索引在内部被转换为字符串类型,这是因为javascrip ...

  4. java===字符串常用API介绍(转)

    本文转自:http://blog.csdn.net/crazy_kid_hnf/article/details/55102861 字符串基本操作 1.substring(from,end)(含头不含尾 ...

  5. JavaScript 数组、字符串、Map、Set 方法整理

    在线阅读 https://www.kancloud.cn/chenmk/web-knowledges/1080519 数组 isArray():Array.isArray(value) 用于检测变量是 ...

  6. JavaScript数组转字符串,字符串转数组

    //--------------------数组转字符串--------------------------- //需要将数组元素用某个字符连接成字符串 var a1, b1,c1; a1 = [&q ...

  7. JavaScript数组与字符串常用方法总结

    先来一段代码引子: var str='hello world'; alert(str.charAt());//通过下标查找值: alert(str.indexOf());//通过值查找字符串下标:没有 ...

  8. javascript数组与字符串之间转换

    一.数组转字符串(将数组元素用某个字符连接成字符串) var a, b;a = new Array(0,1,2,3,4);b = a.join("-"); 二.字符串转数组(将字符 ...

  9. Javascript:数组和字符串的相互转化

    中午吃饭的时候,和室友讨论前端的问题,然后一个有趣的问题被抛出来: javascript用什么方法可以把“hello world”位置反转输出,即输出:"dlrow olleh"? ...

随机推荐

  1. mysql 报错:Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column. To disable safe mode, toggle the option in Preferences

    目录 #事故现场 #解决方法 #事故现场 mysql执行update操作报错: sql如下: update psmp.Users set name='Jack' where name='Lily'; ...

  2. nodejs爬虫--抓取CSDN某用户全部文章

    最近正在学习node.js,就像搞一些东西来玩玩,于是这个简单的爬虫就诞生了. 准备工作 node.js爬虫肯定要先安装node.js环境 创建一个文件夹 在该文件夹打开命令行,执行npm init初 ...

  3. set()和get()方法

    在很多程序中,都喜欢定义一个privata变量,然后为这个私有变量加上get(),set()方法.那为什么不直接定义一个public变量呢?这样做到底有什么好处和意义呢?难道真的仅仅只是为了代码规范? ...

  4. Java Web Servlet知识点讲解(一)

    一.Web应用架构 如图所示: HTTP协议:一个简单的请求一响应协议,通常运行在TCP之上,它指定了客户端可能发送给服务器什么样的信息以及得到什么样的响应. JDBC:Java语言中用来规范客户端程 ...

  5. 【算法】——递归:小白正在上楼梯,楼梯有n阶台阶,小白一次可以上1阶,2阶或者3阶,实现一个方法,计算小白有多少种走完楼梯的方式。

    分析:从最后一步分析,能有的情况有三种情况构成,写出如图所示的方程 //和斐波拉契相似 int void f(int n) { //考虑出口 ) ;//正常思路是返回0 ) ;//通过自己想可以得出只 ...

  6. Python学习笔记———递归遍历多层目录

    import os #得到当前目录下所有的文件 def getALLDir(path,sp = ""): filesList = os.listdir(path) #处理每一个文件 ...

  7. 数据库 left()、length()函数

    数据库 left().length()函数 1.Mysql的length()函数: length()函数主要用于计算字符串的长度,用法也很简单:length(要计算的字符串) 就可以计算出字符串的长度 ...

  8. 牛客练习赛56 B 小琛和他的学校

    题目链接:https://ac.nowcoder.com/acm/contest/3566/B 思路:一条路可把图分为左右两部分. l_ci, l_peo, r_ci, r_peo, w 分别为左边城 ...

  9. Redis-03-集群搭建

    基于redis-3.2.4的Redis-Cluster集群搭建 原理 Redis 集群采用了P2P的模式,完全去中心化.Redis 把所有的 Key 分成了 16384 个 slot,每个 Redis ...

  10. tensor数据基操----索引与切片

    玩过深度学习图像处理的都知道,对于一张分辨率超大的图片,我们往往不会采取直接压平读入的方式喂入神经网络,而是将它切成一小块一小块的去读,这样的好处就是可以加快读取速度并且减少内存的占用.就拿医学图像处 ...