js基础篇string&&array(应YX同学面试复习要求 - -)
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同学面试复习要求 - -)的更多相关文章
- 前端面试题目汇总摘录(JS 基础篇)
JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string typeof null; // o ...
- JS基础篇--sort()方法的用法,参数以及排序原理
JS基础篇--sort()方法的用法,参数以及排序原理 sort() 方法用于对数组的元素进行排序,并返回数组.默认排序顺序是根据字符串Unicode码点.语法:arrayObject.sort( ...
- js基础篇——call/apply、arguments、undefined/null
a.call和apply方法详解 call方法: 语法:call([thisObj[,arg1[, arg2[, [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象 ...
- js基础进阶--关于Array.prototype.slice.call(arguments) 的思考
欢迎访问我的个人博客:http://www.xiaolongwu.cn Array.prototype.slice.call(arguments)的作用为:强制转化arguments为数组格式,一般出 ...
- 前端面试题目汇总摘录(JS 基础篇 —— 2018.11.02更新)
温故而知新,保持空杯心态 JS 基础 JavaScript 的 typeof 返回那些数据类型 object number function boolean undefined string type ...
- js 基础篇(点击事件轮播图的实现)
轮播图在以后的应用中还是比较常见的,不需要多少行代码就能实现.但是在只掌握了js基础知识的情况下,怎么来用较少的而且逻辑又简单的方法来实现呢?下面来分析下几种不同的做法: 1.利用位移的方法来实现 首 ...
- Vue.js基础篇实战--一个ToDoList小应用
距离开始学Vue已经过去一个多月了,总想把学到的东西柔和在一起,做点东西出来,于是有了这个Todolist小应用. 使用vuex 纯粹基础,没有用到web pack,vuex,npm,下次把它改造一下 ...
- 前端之js基础篇
JavaScript概述 ECMAScript和JavaScript的关系 1996年11月,JavaScript的创造者--Netscape公司,决定将JavaScript提交给国际标准化组织ECM ...
- js基础篇——变量
a.变量类型 变量类型 构造函数 举例 类型检测typeof 字符串 function String() var t = "chua"; var m = new String(&q ...
随机推荐
- git将多个commit合并成一个新的commit
问题: 有以下commit: 323udd ede234 6e7s6e 要合并第一个和第二个commit 方法有二: 方法一 使用git rebase -i hash-id,-i表示以交互模式进行co ...
- CF_863_F(Netflow)
codeforces_863_F 题目大意:给出一个数组的大小(n<=50),以及每个位置填数的范围限制(若无限制,即为1-n),最后求填出数组的最小花费,定义总花费为数组中每个数出现次数的平方 ...
- Combobox绑定泛型字典时提示“复杂的 DataBinding 接受 IList 或 IListSource 作为数据源”的解决方法
一般情况下我们会将 DataTable 或 DataView 绑定到 Combobox 控件上,这时候进行数据绑定是没有问题的,因为DataTable 和 DataView 都继承了 IList 接口 ...
- python 字典获取最大和最小的value
my_dict = {, , } key_max = max(my_dict.keys(), key=(lambda k: my_dict[k])) key_min = min(my_dict.key ...
- js 杂谈
js解释器有自己的内存管理机制(垃圾回收:自动回收无引用指向对象) js采用一种数字类型(64位浮点数),100与1e2完全相等 条件判断是被当为假的值:false.null.undefined.‘’ ...
- 从invalidAuthenticationToken❌想到需要忽略:verify_authenticity_token。
https://www.cnblogs.com/chentianwei/diary/2018/07/11/9296126.html 这篇日记记录了我遇到的invalidAuthenticaitonTo ...
- Android之微信开放平台实现分享(分享好友和朋友圈)
开发中分享操作往往经常遇到,而且还是一些比较大型一定的平台,如微信,QQ,微博等.写这篇博客主要是把微信的的分享和相关操作表达一下,分享可以包含:文字,视频,音乐,图片等分享. 分享可以有 分享给好友 ...
- ultraedit开发使用技巧
抛开Mybatis和Hibernate这些dao框架,如果维护老项目时或者不得不用sql拼接时,一个几百行的sql光是去掉navicat中查询的注释或者在sql前后加上双引号就已经很费劲,影响开发效率 ...
- BZOJ3288 Mato矩阵
网上说高斯消元得到下三角矩阵然后都是phi(i)...反着我是搞不出来 打个表什么的还是能看出来点奇怪的东西,比如后面能整除前面的,然后再乱搞吧2333 /********************** ...
- VS2017打包安装程序
VS2017 并不自带安装部署项目,需要在[扩展和更新]中安装插件:Microsoft Visual Studio 2017 Installer Projects(现更名为Microsoft Visu ...