js中的数据类型一共有五个基本数据类型,分别是undefined,null,boolean,number,string.

js中的Object类型中包括两大类型:Function类型和array类型。而我们现在要说的就是string和array!

string

1.length   可以取出字符串有多少个字符                                          "abc".length      结果:3

2.charAt    返回指定索引位置的字符                       "abc".charAt(1)   结果:b

3.substring  返回对象中指定开头索引到指定结尾索引的字符串            "abcdef".substring(1,3)   结果:bc

4.substr     返回一个从指定位置开始的指定长度的字符串               "abcdef".substr(2,3)    结果:cde

5.indexOf    返回字符串索引位置,如果字符串中没有这个字符则返回-1                    "abcdef".indexOf("e")  结果:4        注意:索引是从0开始的

6.split         将字符串切分为子字符串转化成数组方式返回                                     "a b c d e f".split(" ")   结果:["a", "b", "c", "d", "e", "f"]

7. toLowerCase(小写)   to UpperCase(大写)     将字符串中所有字符都转化为大(小)写

8.concat    提供字符串连接                           str.concat('abc','def')   结果:abcdef

上面提高的都是string最常用的方法

下面我们来说array

首先定义一个array类型有两种方法

第一种new的方式创建数组

var arr = new Array();

如果Array里面有参数分为两种情况:

第一种:

var arr1 = new Array(100);

代表新建一个长度为100的数组

第二种:

var arr = new Array(["yxsb"]);//[]里面可以是数字

代表新建一个数组第一位是yxsb

当然也可以这样子:

var arr = new Array(["yxsb","yxdsb","yxdsb","yxzsb"]);

下面我们来说一些关于array的方法:

1.join()   把数组的所有项用,组合起来返回一个字符串      ["yx","dsb"].join();        结果:yx,dsb

2.pop() 将数组中最后一个元素从数组中删除  push() 将新元素添加到一个数组中的最后

3.shift()将数组中的第一个元素从数组中删除  unshift()将新元素添加到一个数组中的开头

4.sort()将数组排序(这个排序并不是从大到小排序,如果从大到小排序还需要自己封装一个compare算法)

function compare(y,x){
return y-x;
}
arr = [,,,,,].sort(compare);

5.splice()   从一个数组中移除一个或多个元素,也可以在所移除元素的位置上插入新元素

当参数为2个的时候:第一个参数表示起始位置,第二项表示要删除的项数


var arr = ['a','b','c','d'];
     var arr1 = arr.splice(0,1);
     console.log(arr);


结果为:["b", "c", "d"]

当参数为3个的时候:第一个参数表示起始位置,第二项表示要删除的项数,第三项表示插入的项

    var arr = ['a','b','c','d'];
var arr1 = arr.splice(,,'f');
console.log(arr);

结果为:["a", "f", "c", "d"]

6.slice 返回数组的一段     两个参数分别为开始位置和结束位置

7.reverse  数组反序

上面基本上可以说是数组和字符串常用的方法了,其实字符串和数组唯一联系的就是字符串的split方法和数组的join方法,这两个方法可以实现数组和字符串的相互转换。另外也有一些比较重要的字符串转换

比如:

数组转化为字符串:tostring方法

字符串转化为数字:Number方法(如何有字符串就返回NaN)

字符串(json串)转化为js对象:eval方法(不推荐使用) JSON.parse方法

字符串转化为数组:split方法

数组转化为字符串:join方法

上面总结的都是日常开发中比较常用的有关string和array的一些方法,基本上掌握了这些,js中的string和array你就算是掌握了!

js基础篇string&&array(应YX同学面试复习要求 - -)的更多相关文章

  1. 前端面试题目汇总摘录(JS 基础篇)

    JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string typeof null; // o ...

  2. JS基础篇--sort()方法的用法,参数以及排序原理

    JS基础篇--sort()方法的用法,参数以及排序原理   sort() 方法用于对数组的元素进行排序,并返回数组.默认排序顺序是根据字符串Unicode码点.语法:arrayObject.sort( ...

  3. js基础篇——call/apply、arguments、undefined/null

    a.call和apply方法详解 call方法: 语法:call([thisObj[,arg1[, arg2[,   [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象 ...

  4. js基础进阶--关于Array.prototype.slice.call(arguments) 的思考

    欢迎访问我的个人博客:http://www.xiaolongwu.cn Array.prototype.slice.call(arguments)的作用为:强制转化arguments为数组格式,一般出 ...

  5. 前端面试题目汇总摘录(JS 基础篇 —— 2018.11.02更新)

    温故而知新,保持空杯心态 JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string type ...

  6. js 基础篇(点击事件轮播图的实现)

    轮播图在以后的应用中还是比较常见的,不需要多少行代码就能实现.但是在只掌握了js基础知识的情况下,怎么来用较少的而且逻辑又简单的方法来实现呢?下面来分析下几种不同的做法: 1.利用位移的方法来实现 首 ...

  7. Vue.js基础篇实战--一个ToDoList小应用

    距离开始学Vue已经过去一个多月了,总想把学到的东西柔和在一起,做点东西出来,于是有了这个Todolist小应用. 使用vuex 纯粹基础,没有用到web pack,vuex,npm,下次把它改造一下 ...

  8. 前端之js基础篇

    JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECM ...

  9. js基础篇——变量

    a.变量类型 变量类型 构造函数 举例 类型检测typeof 字符串 function String() var t = "chua"; var m = new String(&q ...

随机推荐

  1. linux内核分析第四周-使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用

    本周作业的主要内容就是采用gcc嵌入汇编的方式调用system call.系统调用其实就是操作系统提供的服务.我们平时编写的程序,如果仅仅是数值计算,那么所有的过程都是在用户态完成的,但是我们想将变量 ...

  2. usb_control_msg() -- 从设备读取各种信息

    et_port_status() --> usb_control_msg()usb_get_descriptor() --> usb_control_msg()/usr/src/linux ...

  3. JQuery实现锚点平滑滚动

    一般使用锚点来跳转到页面指定位置的时候,会生硬地立即跳转到指定位置,但是有些时候我们想要平滑地过渡到指定的位置,那么可以使用JQuery简单的实现这个效果: 比如,这里我们将通过点击<a> ...

  4. Google V8 引擎 原理详解

    V8 引擎概览 V8 引擎简介 Google V8 引擎使用 C++ 代码编写,实现了 ECMAScript 规范的第五版,可以运行在所有的主流 操作系统中,甚至可以运行在移动终端 ( 基于 ARM ...

  5. 原生DOM操作vs框架虚拟DOM比较

    1. 原生 DOM 操作 vs. 通过框架封装操作. 这是一个性能 vs. 可维护性的取舍.框架的意义在于为你掩盖底层的 DOM 操作,让你用更声明式的方式来描述你的目的,从而让你的代码更容易维护.没 ...

  6. Gym - 101334C 3514 无向仙人掌

    http://codeforces.com/gym/101334/attachments 题意: 判断是否是仙人掌图并且连通,如果是的话则计算出它有多少个连通子图也是仙人掌. 思路:连通子图也就是我们 ...

  7. spring boot2 基于百度云apiface实现人脸检测与认证2

    接上一篇,上篇只实现了人脸的认证,接下来实现人脸的检测. 原理介绍: 把摄像头抓拍的图像上传到服务器,服务器把图像上传到百度云,百度云返回识别出的人脸的数量和位置,前端根据服务端的返回,在图像中画出人 ...

  8. springboot logback + log4j2日志管理

    springboot的web项目中自带了日志组件: 我们看一下,springboot中找到日志组件. <dependency> <groupId>org.springframe ...

  9. Question: Should I use reads with good quality but failed-vendor flag?--biostart for vendor quality

    https://www.biostars.org/p/198405/ Quick question is: I have some mapped reads in bam file which hav ...

  10. 用 SQL 对关系型数据库进行查询

    前面几节中,我们已经掌握了如何向 SQLite 数据库中写入数据.这一节,我们将学习如何根据需求对数据库进行查询,进而从中获取数据.接下来的例子中会使用 data/datasets.sqlite(之前 ...