js字符串、数组和数字常用方法总结

https://github.com/AnHyun/blog/issues/3

一、string 常用方法:

1.substring(start开始位置的索引,end结束位置索引) 截取的位置不包含结束位置的字符,只写一个参数表示从开始位置截取到最后,输入负值时将负值变为0,哪个较小作为开始位置

var str='abcdefg';  
str.substring(1) //得到bcdefg  str.substring(1,3) //得到bc

2.slice(start开始位置索引,end结束位置索引) 基本和substring相似,区别在参数为负数。输入负值时 值与字符串的长度相加

var str='abcdefg'; 
str.slice(1)  //bcdefg      str.substring(1,3) // bc

3.substr(start开始位置索引,end需要返回的字符个数) 输入负值时 start参数与字符串的长度相加 ,end为负时参数变为0

var str='abcdefg'; 
str.substr(1) //bcdefg      str.substr(1,1) //b

4.charAt(index) 方法返回指定索引位置处的字符。如果超出有效范围(0与字符串长度减一)的索引值返回空字符串.

var str='abcdefg';
str.charAt(2) // c

5.indexOf(string) 返回String对象内第一次出现子字符串位置。如果没有找到子字符串,则返回-1。
var str='abcdefga' str.indexOf('a') // 0 str.indexOf('h') //-1

6.lastIndexOf(string) 倒叙查找,返回String对象内第一次出现子字符串位置。如果没有找到子字符串,则返回-1。

var str='abcdefga'     str.lastIndexOf('a') 
// 7

7.split(str) 将字符串以参数分割为数组

var str='abcadeafg'     str.split('a') 
//["", "bc", "de", "fg"]

8.toLowerCase() 方法返回一个字符串,该字符串中的字母被转换成小写。

9.toUpperCase() 方法返回一个字符串,该字符串中的所有字母都被转换为大写字母。

10.match() – 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配

11.search() 方法返回与正则表达式查找内容匹配的第一个字符串的位置。

12.test() 方法用于检测一个字符串是否匹配某个模式.

13.replace() 用来查找匹配一个正则表达式的字符串,然后使用新字符串代替匹配

14.charCodeAt() 方法返回一个整数,代表指定位置字符的Unicode编码。

15.trim() 去除两端的空格,不影响之前的字符串

二、数组常用的方法

  1. push() 添加到最后 返回添加后的数组

  2. unshift() 添加到最前面 返回添加后的数组

  3. shift() 删除(从前面) 返回处理后的数组

  4. pop() 删除最后一项 返回处理后的数组

  5. reverse() 数组翻转 返回处理后的数组

  6. slice(start,end) 截取数组 从start(开始) 到end(结束 不包含), 返回新数组,原数组不变

var arr=[1,2,3,4,5],new=arr.slice(2,4);
console.log(new);  // [3,4]
console.log(arr);  // [1,2,3,4,5]
  1. concat() 数组合并

  2. splice(开始下标,个数,ele1,ele2....) 剪接数组

(1)一个参数 从参数位置截取 填写负数类似上面str slice 返回截好的数组 原数组变化

var arr=[1,2,3,4,5];
console.log(arr.splice(1));  // [2,3,4,5]
console.log(arr);       // [1]
console.lgo(arr.splice(-1))  // [5]  

(2).二个参数 截取 (开始位置,个数) 返回截好的数组 原数组变化

var arr=[1,2,3,4,5];
console.log(arr.splice(1,3)); // [2,3,4]
console.log(arr)       // [1,5]
arr.splice(0,1) =>arr.shift()
arr.splcie(arr.length-1,1) =>arr.pop()

(3).添加 原数组增加

var arr=[1,2,3,4,5];
console.log(arr.splice(1,0,13)); // []
console.log(arr);        // [1,13,2,3,4,5]

(4).替换

var arr=[1,2,3,4,5];
console.log(arr.splice(1,2,'a','b')) // [2,3]
console.log(arr);        // [1,'a','b',4,5]
arr.splice(0,0,1) =>arr.unshift(1);
arr.splice(arr.length,0,1) => arr.push(1)
  1. arr.forEach(item,index,array){} 遍历,循环 类似jquery的each 其中的item参数是数组中的内容,index为其索引,array表示数组本身
 var arr=[1,2,3,4,5];arr.forEach(function(item,index,array){})
  1. map() 方法 映射 用法和forEach类似 对数组的所有成员依次调用一个函数,根据函数结果返回一个新数组。
var men=[{'name':1,'age':12},{'name':2,'age':22},{'name':3,'age':33}],age=men.map(function(item){return item.age;})

11.filter() 参数是一个函数,所有数组成员依次执行该函数,返回结果为true的成员组成一个新数组返回。该方法不会改变原数组。

var arr = [1, 2, 3, 4, 5]
arr.filter(function (elem) {return (elem > 3);
})
// [4, 5]
  1. arr.sort() 排序 默认情况下sort方法是按ascii字母顺序排序的,而非我们认为是按数字大小排序
var arr=[1,2,22,11,33,3,5,4];
console.log(arr.sort()) // [1,11,2,22,3,33,4,5] arr.sort(function(a,b){ return a-b})a-b从小到大 b-a从大到小

三、数组和字符串之间的转换

1.join() 数组转化为字符串

2.split() 字符串转换为数组

3.toString() 返回数组的字符串形式。

四、常见数学方法

1.math.abs() 取绝对值

2.math.ceil() 向上取整

3.math.floor() 向下取整

4.math.round() 四舍五入

5.math.roundom() 取随机数

6.toFixed() 保留小数,结果是字符串类型的!!!

7.parseInt() 转化为整型数字(整数)

8.parseFloat() 转化为浮点型数字(带小数的数字)

转载于:https://www.cnblogs.com/hupan508/p/7059207.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/455389.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Oracle 存储过程错误之PLS-00201: 必须声明标识符

转自:http://blog.csdn.net/u010678947/article/details/20702149 错误: ORA-06550: 第 1 行, 第 7 列: PLS-00201: 必须声明标识符ZUO.PROCE_TESTORA-06550: 第 1 行, 第 7 列: PL/SQL: Statement ignored 解决方法: (1&#x…

mysql中如何把两个查询结果列数不同并成一张表_MySQL

引言本文整理了MySQL相关的知识,方便以后查阅。 基础架构下图是 MySQL 的一个简要架构图,从下图你可以很清晰的看到用户的 SQL 语句在 MySQL 内部是如何执行的。 先简单介绍一下下图涉及的一些组件的基本作用帮助大家理解这幅图。 - 连接器: …

JavaWeb笔记01-XML

今日内容 XML 概念语法解析 XML: 概念: Extensible Markup Language 可扩展标记语言 可扩展:标签都是自定义的.<user><student> 功能 存储数据 配置文件在网络中传输 一个故事 由于浏览器之间的竞争,导致HTML发展的十分不顺利 用户:唉,这怎么报错了呢?…

centos下如何使用sendmail发送邮件

最近在实施服务端日志监控脚本&#xff0c;需要对异常情况发送邮件通知相关责任人&#xff0c;记录下centos通过sendmail发送邮件的配置过程。一. 安装sendmail和mailx1、安装sendmail&#xff1a;1): centos下可以安装命令:yum install -y sendmail service sendmail start yu…

H.263 H.263+ Payload Type

h263 rtp协议封装协议英文版&#xff1a;rfc4629:http://tools.ietf.org/html/rfc4629 以下文章是部分参考翻译&#xff1a; 文章出处&#xff1a; http://blog.csdn.net/zblue78/archive/2009/04/09/4059414.aspxGeneral H.263 Payload Header The H.263 payload header is s…

OC 中 load 方法和 initialize 方法的异同

(void)load; 当类对象被引入项目时, runtime 会向每一个类对象发送 load 消息load 方法会在每一个类甚至分类被引入时仅调用一次,调用的顺序:父类优先于子类, 子类优先于分类load 方法不会被类自动继承 (void)initialize; 也是在第一次使用这个类的时候会调用这个方法 转载于:h…

scrapy框架_Python学习之Scrapy框架

爬虫界江湖地位No.1说起Python&#xff0c;不得不说到它的爬虫应用&#xff0c;由于Python的短小精悍&#xff0c;用它来开发爬虫应用是最合适不过了&#xff0c;基于Python抓取网页的库有很多&#xff0c;例如requests,beatifulsoup等等&#xff0c;但是要说到有哪一个框架&am…

JavaWeb笔记03-Servlet

今日内容 ServletHTTP协议Request Servlet 概念 步骤 执行原理 生命周期 Servlet3.0注解配置 Servlet的体系结构 Servlet – 接口 GenericServlet – 抽象类:将Servlet接口中其他方法做了默认空实现,只将service()方法作为抽象 将来定义Servlet类时候,可以继承Generic…

Android开发中无处不在的设计模式——动态代理模式

继续更新设计模式系列。写这个模式的主要原因是近期看到了动态代理的代码。 先来回想一下前5个模式&#xff1a; - Android开发中无处不在的设计模式——单例模式 - Android开发中无处不在的设计模式——Builder模式 - Android开发中无处不在的设计模式——观察者模式 - A…

用于MPEG-4视听流的RTP负载格式

MPEG-4的rtp协议封装英文原版 RFC 3016&#xff1a;http://www.rfc-editor.org/rfc/rfc3016.txt中文翻译&#xff1a;组织&#xff1a;中国互动出版网&#xff08;http://www.china-pub.com/&#xff09;RFC文档中文翻译计划&#xff08;http://www.china-pub.com/compters/emo…

pycharm python 模板配置_windows下pycharm安装、创建文件、配置默认模板

本文为大家分享了windows下pycharm安装、创建文件、配置默认模板的具体步骤&#xff0c;供大家参考&#xff0c;具体内容如下步骤&#xff1a;下包 —->安装——>创建文件—->定制模板一、下包官方地址这里有企业版和社区版&#xff0c;老司机都知道社区版是免费的&am…

JavaWeb笔记02-Tomcat

今日内容 web相关概念回顾web服务器软件:TomcatServlet入门学习 web相关概念回顾 软件架构 C/S: 客户端/服务器端B/S: 浏览器/服务器端 资源分类 静态资源: 所有用户访问后,得到的结果都是一样的,成为静态资源,静态资源可以直接被浏览器解析 如:html, css ,JavaScript 动态资…

网上的画板代码收集和整理

修改后的代码[1]为&#xff0c;少了一个} package com.example.administrator.myapplication;import android.app.Activity; import android.app.AlertDialog; import android.app.Dialog; import android.content.DialogInterface; import android.graphics.Canvas; import an…

如何写年终总结(转)

很多人不重视年终总结&#xff0c;觉得是一个非常令人厌烦的任务&#xff0c;往往是应付了事&#xff0c;短短几百字&#xff0c;对目前工作中存在的问题发现不够&#xff0c;思考不足&#xff0c;对自己一年的评价和未来一年的定位没有说明。造成的后果就是公司得不到来自基层…

cad移动时捕捉不到基点_CAD入门必备(一)移动和复制新手必看

cad也疯狂前言&#xff1a;CAD绘图之所以能够取代手工绘图&#xff0c;很大的一部分原因是因为它可以很方便的修改和重复利用&#xff0c;例如外参可以节省很大部分时间。而我们在使用CAD中&#xff0c;用得最频繁的功能就是移动和复制了&#xff0c;当然这也是新手必备的其中一…

H.264软件解码器在PXA270平台上的优化

罗 嵘&#xff0c;何 苦 时间:2009年04月24日摘 要&#xff1a; 研究了嵌入式系统中H.264 Baseline软件解码器设计和优化的问题&#xff0c;提出了四种有效的优化方法&#xff0c;并在PXA270平台上进行了测试。测试结果显示&#xff0c;综合使用提出的四种方法&#xff0c;H.26…

JavaWeb笔记04-解决GET与POST乱码问题

解决GET与POST乱码问题: 请求的乱码问题 GET:tomcat8版本之前,get请求会乱码 正常文字 --> UTF-8编码 --> 字节数组 --> ISO-8859-1 编码 --> 乱码文字 正常文字 <-- UTF-8编码 <-- 字节数组 <-- ISO-8859-1 编码 <-- 乱码文字解决乱码的两种格式: …

EF架构~codeFirst从初始化到数据库迁移

一些介绍 CodeFirst是EntityFrameworks的一种开发模式&#xff0c;即代码优先&#xff0c;它以业务代码为主&#xff0c;通过代码来生成数据库&#xff0c;并且加上migration的强大数据表比对功能来生成数据库版本&#xff0c;让程序开发人员不用维护数据库的变更&#xff0c;而…

Ubuntu用户Steam控制器不工作的解决办法

Steam 控制器已开始送货到世界各地游戏玩家手中&#xff0c;不过有朋友遇到 Steam 控制器在 Ubuntu 中无法正常工作&#xff0c;本文我们来介绍一下解决办法。该解决办法并非 Ubuntu 官方提出的最佳解决方案&#xff0c;不过还是可以临时解决 Ubuntu 用户 Steam 控制器不工作的…

lisp 车位块自动编号_机械车位做产权登记,真的适合吗?

为了更好地把握停车市场发展动向&#xff0c;给停车行业从业者提供一个发表观点、各抒己见的平台&#xff0c;共同促进停车行业的发展&#xff0c;《城市停车》开设热点版块&#xff0c;每期针对1-2个行业热点&#xff0c;广泛征集业内人士观点和看法。HOT TOPIC本期热点今年两…