一、数组:
  数组的基本方法:
             1、增:arr.unshift() /push()    前增/后增    
             2、删:arr.shift() /pop()        前删/后删
             3、改:arr.splice(开始下标,删除的长度,增加的元素,增加的元素) 
        注:增加元素时,删除的长度为0 
             4、截: arr.slice(开始下标,结束下标)  
             5、拼:arr.concat(元素,元素,元素)
        注:拼接到新数组的末尾,如果是数组就打开拼接。
             6、复:forin   /  slice  /   concat  /  map   /forEach   
        注: ES5新增的复制方法都没for循环效率高
        for (变量 in 对象){
           在此执行代码
        }
             7、排: arr.reverse() 逆序输出    
                 arr.sort([a-b])该方法没有参数时按照字符编码的顺序进行排序   a-b<0 数字从小到大排序  a-b>0从大到小排序  
             8、转:arr.toString()  转为以逗号分隔的字符串  /    转换进制
                     arr.join('分隔符')
      
           (截、拼、转不影响原数组)
            
  ES5拓展数组方法  
          1、indexOf(查找的元素,开始查找的下标):从某个下标开始查找这个元素第一次出现的位置。 查不到返回-1。
             2、 lastindexOf(查找的元素,下标): 从后往前查找
             3、forEach()  遍历数组     (无返回值)
                  数组名.forEach(function(value,index,arr){
                          (数组元素,数组下标,整个数组)
                        语句组;
                  })
             4、map(function(value,index,arr){return ...}) //遍历数组(有返回值)
                        var list = arr.map(function(value,index,arr){
                              return value;
                        })
                 forEach和map方法只能遍历数组,forin遍历数组和对象。  
             5、reduce(function(prev,next,index,array){return ...})  //     归并 (有返回值)
                        注:先第一个数赋值prev,再取第二个数赋值next,然后prev与next进行运算,运算后的值再赋给prev,next继承取下一数。
                        用于求和,阶乘
                        var arr = [1,2,3,4];
                        var list = arr.reduce(function(prev,next,index,array){
                              return prev * next;
                        }) 
             6、filter(function(value,index,arr{return ...}) //过滤  (有返回值)
                        var arr = [1,6,4,4,8,9,33];
                        var list =arr.filter(function(value){
                              return value >6
                        })
                        console.log(list)   // 8,9,13
              (ES5的方法都不影响元素组)
二、字符串:             
  字符串的方法:
                   
     1、 查:
          charAt(index):根据    下标查找指定的字符     下表找不到时,输出 空。
          charCodeAt(index):根据下标查找指定的字符的编码值 。下标超出范围时,输出NAN
     2、 替:
          replace(旧串,新串)
          替换成新的字符串,    一次只能替换一个
        3、截:后面的end不截    substring:(start,end)  支持参数互换(3,4)(4,3)
                substr:(start,length)
                slice:(start,end) 支持负数(从右往左数,-1至-10等等)
        4、转:
          toUpperCase():小写字母转大写字母
          toLowerCase():大写字母转小写字母
          split(分隔符,截取的长度)  :  将字符串转为数组 
  字符串拓展方法:
        1、字符串对象.match(正则表达式) : 如果字符串中包含了正则表达式的内容,返回数组,否则,返回null,
           2、字符串对象.search(正则表达式) : 类似于indexOf(),查找正则匹配的内容在字符串中第一次出现的下标位置,如果没有找到,返回-1
           3、字符串对象.replace()
   4、静态方法:
        String.fromCharCode(编码):将编码转成字符
        

    静态方法:格式 构造函数.方法  String.fromCharCode。
    对象方法:格式 对象.方法     arr.push
 

JS中数组和字符串方法的简单整理的更多相关文章

  1. JS中数组和字符串的方法大全

    数组的方法很多,ECMScript5又提供了好几种方法.有空把之前的云上的笔记整理了一下,方便自己以后查找使用. 一.ECMScript 3的Array.prototype中定义的方法 1.join( ...

  2. JS中数组和字符串具有的方法,以及substring,substr和slice的用法与区别

     String 对象属性 属性 描述 constructor 对创建该对象的函数的引用 length 字符串的长度 prototype 允许您向对象添加属性和方法 String 对象方法 方法 描述 ...

  3. js中数组、字符串、日期、数学API方法一览

    以下内容摘选自 http://www.w3school.com.cn/jsref/jsref_obj_array.asp 点击方法新窗口打开详解 数组: 方法 描述 concat() 连接两个或更多的 ...

  4. js 常用数组和字符串方法

    javascript数组与字符串常用方法总结 最近在梳理js的基础,首先从数组和字符串开始. string 常用方法: 1.substring(start开始位置的索引,end结束位置索引) 截取的位 ...

  5. js中数组的检测方法

    在js中可以使用Object.prototype.toString.call()的来检测一个对象是否为一个数组 //检测数组 var a = [1, 2]; console.log(typeof a) ...

  6. js中数组的定义方法及注意事项(转)

    1.数组的创建 var name= new Array(); //创建一个数组 name[0]="zhangsan";   //给数组赋值 name[1]="lisi&q ...

  7. JS中数组的拷贝方法

    之前在写一个vue的计算属性时,大概是这样: computed: { updateList () { let newList = this.List /*do something*/ return n ...

  8. JS中数组的迭代方法和归并方法

    昨天总结的JavaScript中的数组Array方法 数组的迭代方法 ES5中为数组定义了5个迭代方法.每个方法都要接收两个参数:要在每一项上面运行的函数和(可选的)运行该函数的作用域对象---影响t ...

  9. js中数组的字符串表示

    <html> <head> <title>数组的字符串表示</title> <script type="text/javascript& ...

随机推荐

  1. 解决git 命令出现end问题

    当使用git branch -r是当分支有很多的时候出现end 使用:q可以退出

  2. iView栅格的使用

    一般情况下栅格系统都会把每行row分为12列,但是iview是采用了24栅格系统,将区域进行24等分 基础用法 实例代码: <template> <Row> <Col s ...

  3. unigui ios微信界面错位和点击失灵问题

    IOS微信下会出现二个严重问题: 1.输入框失去焦点导致控件错位,造成无点正常点击. 此问题是微信自带浏览器,一直遗留问题, 尝试了多种方法始终无解.因此要用来开发公众号的一定要注意. 2.界面下移 ...

  4. 6411. 【NOIP2019模拟11.06】上网

    题目描述 Description Input Output 若无解,则输出"Impossible". 否则第一行输出"Possible",第二行输出 n 个正整 ...

  5. Rosetta Stone 不在C盘安装步骤

    本文出自:http://www.cnblogs.com/2186009311CFF/p/7500637.html Rosetta Stone默认安装在C盘的,很不好,故找到次解决方案: 总体就是移动文 ...

  6. Redis高可用分布式

    阅读目录: 高可用 数据同步 分布式 分布式集群时代 总结 高可用 高可用(High Availability),是当一台服务器停止服务后,对于业务及用户毫无影响. 停止服务的原因可能由于网卡.路由器 ...

  7. AGC030F - Permutation and Minimum

    https://atcoder.jp/contests/agc030/tasks/agc030_f 题解 我们先把这个排列从\(1 \sim 2n\)表达出来,然后题面中的每一对数我们可以用一条线把他 ...

  8. Alexa TOP 100万的域名列表

    Alexa是一家专门发布网站世界排名的网站,是亚马逊公司的一家子公司.Alexa每天在网上搜集多达几十亿的网址链接,而且为其中的每一个网站进行了排名. Alexa通过Alexa官网查询好像TOP 50 ...

  9. SVM 笔记整理

    支持向量机 一.支持向量机综述 1.研究思路,从最特殊.最简单的情况开始研究 基本的线性的可分 SVM 解决二分类问题,是参数化的模型.定义类标记为 \(+1\) 和 \(-1\)(区别于感知机,感知 ...

  10. Gradle 学习笔记

    配置 Gradle 的环境变量 export GRADLE_HOME=/opt/software/java/gradle-3.1 export PATH=\(PATH:\)GRADLE_HOME/bi ...