WEB Basic基础-11

本文详细介绍了JavaScript中数组和字符串的基础操作,包括数组的基本方法如push、pop等,以及字符串的各种属性和方法如length、charAt等。此外还探讨了如何使用正则表达式进行字符串的模式匹配。
1、数组


1、进出栈操作


栈式操作:提供了快速操作数组头部和尾部元素的方法


1、push()


入栈,压栈,向数组尾部增加新元素,并返回新数组的长度


arr[arr.length] = "张三丰";


arr.push("张三丰");


2、pop()


出栈,弹栈,删除并返回数组尾部的元素


3、unshift()


向数组的头部添加新元素并返回数组的长度


4、shift()


删除并返回数组头部的元素


2、二维数组


1、什么是二维数组


数组中的每个元素又是一个数组


2、声明二维数组


var books = [


["西游记","三国演义","水浒传","红楼梦"],


["老人与海","雾都孤儿","海底两万里"]


];





获取 "三国演义"


books[0][1]


2、字符串 - string


1、声明字符串


var str1 = "字符串1";


var str2 = String("字符串2");


var str3 = new String("字符串3");


2、length 属性


作用:返回当前字符串中字符的个数


3、常用函数 - String API


1、大小写转换函数


1、toUpperCase()


返回当前字符串的完全大写形式


2、toLowerCase()


返回当前字符串的完全小写形式


练习:


1、创建一个数组,并初始化若干数据(由英文大小写以及数组0-9组成)


2、生成一个四位随机验证码


Math.random()


3、将生成四位随机验证码通过prompt提示给用户去看并接收用户的数据


4、比较用户输入的数据与生成的随机验证码是否一致并给出提示(忽略大小写)


2、获取指定位置的字符 或 字符的 Unicode码


1、获取指定位置的字符


函数:str.charAt(index)


ex:


var str = "Hello World";


var s = str.charAt(3);


console.log(s); // l


console.log(str.charAt(6)); //W


2、获取指定位置的字符的Unicode码


函数:str.charCodeAt(index)


ex:


var str = "Hello World";


var r = str.charCodeAt(3);


console.log(r); // l的Unicode码(十进制)


3、检索字符串


1、indexOf(value,fromIndex)


value:要查找的子字符串


fromIndex:从哪个下标位置处开始查找,如果省略,则从第一个字符处开始查找


返回值:返回value第一次出现的下标,如果没有查询到子字符串的话,则返回-1


2、lastIndexOf(value,fromIndex)


作用:查找value最后一次出现的下标






练习:


判断一个字符串是否满足邮箱的格式


1、字符串中必须包含@符号


2、字符串中必须包含.符号


3、最后一个.必须在 @ 之后


zsf@163.com


sanfeng.zhang@163.com


4、截取子字符串


函数:substring(start,end)


作用:返回从start到end-1之间的字符串,如果省略end的话,则截取到整个字符串的尾部。


练习:


1、从指定邮箱中截取用户名


sanfeng.zhang@163.com


2、从指定邮箱中提取服务商名称


sanfeng.zhang@163.com


3、从身份证号码中提取生日


220102196008012216


生日:1960年08月01日


5、分割字符串


作用:将一个由指定连接符的字符串,按照连接符给拆开,拆分成一个字符串数组


函数:split(seperator)






ex:


zsf_zwj_zcs_yss_zm






练习:


1045_5&10221_8&73569_6






共买了3类商品


编号:1045


数量:5


编号:10221


数量:8


编号:73569


数量:6


6、模式匹配


1、作用


配合着 正则表达式 完成字符串的查找和替换


2、正则表达式


语法: /正则格式/修饰符


修饰符:


i:ignorcase(忽略大小写)


g:global(全局匹配)


m:multiple(允许多行匹配)


ex:


1、/\d{2,6}/g


2、/垃圾/g


3、函数


1、replace(substr/regexp,replacement)


作用:在一个字符串中,将substr或满足regexp格式的字符串替换成replacement


2、match(substr/regexp)


按照指定的子字符串或正则表达式进行匹配,并返回满足格式的子字符串(数组)


练习:


Microsoft is a big company,microsoft's color is red and has MICROSOFT logo like microsoft


1、将所有的 microsoft(大小写) 都替换成"微软"


2、输出 共替换了多少处


3、其他内置对象


1、JS中对象分类


1、内置对象 - ES提供


2、外部对象


1、window(BOM)


2、document(DOM)


3、自定义对象 - function






对象:包含属性 和 方法(函数)


对象.属性


对象.方法()


2、RegExp 对象


RegExp - Regular Expression 


1、创建RegExp对象


1、var regExp = /匹配模式/修饰符;


var reg = /垃圾/igm


2、var regExp = new RegExp("匹配模式","修饰符");


var reg = new RegExp("垃圾","g");


2、RegExp 对象的方法


1、test(string)


string:要验证的字符串


作用:验证string是否满足当前正则表达式对象的格式。如果string满足正则表达式的话,则返回true,否则返回false


3、Math 对象


1、作用


执行与数学相关的运算和数据


2、属性


Math.PI : 表示π


Math.E : 表示自然对数


3、方法


1、三角函数


Math.sin()


Math.cos()


Math.tan()


2、计算函数


Math.sqrt(x) : 开平方


Math.log(x) : 求对数


Math.pow(x,y) : 求x的y次方


3、数值函数


Math.abs(x) : 求x的绝对值


Math.max(a,b,c,d) : 求一组数据中的最大值


Math.min(a,b,c,d) : 求一组数据中的最小值


Math.random() : 生成 0-1 之间的随机数


Math.round(x) : 将x四舍五入到整数


4、Date对象


1、作用


获取客户端的日期时间


2、创建Date对象


1、获取当前日期时间


var now = new Date();


2、初始化自定义日期时间对象


var date = new Date("2018/06/13 17:20:20");


3、方法


1、读取或设置当前时间的毫秒数


1、getTime()


返回自1970-1-1 00:00:00 到 date 对象所经过的毫秒数


2、setTime(毫秒数)


根据给定的毫秒数,结合1970-1-1 计算日期


2、读取时间分量


1、getFullYear()


获取当前日期对象的四位年份数


2、getYear()


返回自1900年以来,到当前日期对象所经过的年数


3、getMonth()


返回0-11的数字来表示1-12月


需要得到当前月份的值,需+1


4、getDate()


返回当前日期对象的日


5、getDay()


返回当前日期对象的星期?


返回0-6表示星期日-星期六


6、获取时间


getHours() : 获取小时


getMinutes() : 获取分


getSeconds() : 获取秒


getMilliseconds() : 获取毫秒


7、转换为字符串


1、toString()


2、toLocaleString()


3、toLocaleTimeString()


4、toLocaleDateString()






练习:


1、获取当前系统日期时间


2、按照以下格式输出


xxxx年xx月xx日 xx时xx分xx秒 星期三


2018年06月13日 17时50分01秒 星期三


















10455


102215

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值