Javascript ECMA-3 (数组,Date,正则)
1. 数组
1.1 创建数组
//一、自变量创建数组
// 1-通过字面量创建一个空数组
var arr1 = [];
console.log(arr1)
console.log(typeof arr1); // object// 2-通过字面量创建一个带有元素数组
var arr2 = [1, 2, 'abc', null, true];
console.log(arr2);// 二、通过Array类型创建数组
// 1-创建空数组
var arr3 = new Array();
console.log(arr3);// 2-创建一个最初可以有五个元素的数组,数组的容量为5
var arr4 = new Array(5);
console.log(arr4)//3-创建一个带有四个元素的数组
var arr5 = new Array(1,2,'a','y');
console.log(arr5);
1.2 数组元素的访问及修改
// 创建一个数组
var arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9];// 1-数组下标访问
// 2 数字的length属性
// 通过lenth属性增加元素个数
arr1.length = 13;
console.log(arr1);
// 减少
arr1.length = 6;
console.log(arr1);//3 通过索引增加数据 如果索引不连续 就会出现空的
arr1[6] = 7;
console.log(arr1);//4-删除数据delete
// 使用delete删除不会改变数组的长度 删除的元素用undefined补全
var arr3 = [1, 2, 3, 4, 5]
delete arr3[2];
console.log(arr3);
console.log(arr3[2]); // undefined
1.3 数组的方法
var arr1 = [1, 2, 3, 4];
// push 向数组末尾添加元素
// 可以同时添加一个或多个元素
arr1.push(6);
console.log(arr1);
arr1.push(7,8,9);
console.log(arr1);// unshift 向数组开头添加元素
// 可以同时添加一个或多个元素// 删除元素 pop() 移除最后一个元素
arr1.pop()
console.log(arr1);// 移除第一个元素
arr1.shift();
console.log(arr1);// 反转数组
var arr2 = [1, 2, 3];
arr2.reverse();
console.log(arr2);// join(str)
var arr3 = [1, 2, 3];
var str3 = arr3.join('*');
console.log(str3);// indexOf()
var arr4 = [1, 2, 3, 4, 5, 3];
console.log(arr4.indexOf(3)); //返回3元素 第一次出现的下标
// lastIndexof// slice(start, end):截取数组
// 返回一个新数组
var arr5 = [1, 2, 3, 4, 5, 6, 7, 8, 9];
var arr6 = arr5.slice(2); // 下标2到末尾
console.log(arr6);
var arr7 = arr5.slice(2,6); // 不包含 下标6
console.log(arr7);// splice(index, count, [item1, item2,...])
// splice可以进行增加修改或删除元素的操作
// index:下标 count :元素个数
// [item1 ..] 新元素
// splice直接操作原数组,对原数组有影响// 删除:只写index 与count
// 返回:一个删除元素的数组
var arr8 = [1, 2, 3, 4, 5, 6, 7];
var arr9 = arr8.splice(2,4); // 下标2开始删除4个元素 arr8=[1, 2, 7]
console.log(arr9); // arr9 = [3, 4, 5, 6]
console.log(arr8);// 添加
// 如果执行添加元素的操作,count的值为0
var arr10 = [1, 2, 3, 4]
var arr11 = arr10.splice(2,0, 100,200,300);
console.log(arr11); // [] 没删除
console.log(arr10); // [1,2,100,200,300,3,4]// 替换
var arr12 = [1,2,3,4];
var arr13 = arr12.splice(2,2,100,200);
console.log(arr13); // [3, 4]
console.log(arr12); // [1,2,100,200]// sort:排序 按照ASCII 排序
var arr14 = [3, 17, 19, 2, 0, 1];
arr14.sort();
console.log(arr14);// 参数传入排序
function sortNumber(a,b){return a - b;
}
arr14.sort(sortNumber);
console.log(arr14);// 检测数组的方法
var arr15 = [1, 2, 3, 4];
console.log(arr15 instanceof Array); // true
console.log(arr15.constructor === Array); // true
2. Date的方法
2.1 创建Date
// 创建
// 1、Date() 函数直接创建时间 返回当前时间
var date1 = Date();
console.log(date1); //中国标准时间
console.log(typeof date1); //string//2、Date对象创建
// 2.1 不带参数
var date2 = new Date(); // 好处是可以设置时间
console.log(date2); // object// 2.2、构造方法传入参数
// 传入格式
// 2018-5-10 12:12:12
// 2018-5-10
// 2018-05-10 12:12:12
// 2018-05-10
// 2015/5/10 12:12:12
//2018/05/10 12:12:12var date3 = new Date('2018-5-10 12:12:12');
console.log(date3);
var date4 = new Date('2018-05-10 12:12:12');
console.log(date5);
var date5 = new Date('2018/05/10 12:12:12');
console.log(date6);var date6 = new Date('2018-05-09'); // 用 / 也可以
console.log(date6); // Wed May 09 2018 08:00:00 GMT+0800 (中国标准时间)// 从00:00:00开始 与上面差8小时 而 / 加0不加0是没有区别的
var date7 = new Date('2018-5-9');
console.log(date7); // "Wed May 09 2018 00:00:00 GMT+0800 (中国标准时间)"// 2.3 传入参数: 格式(年月日时分秒毫秒) 会进位
var date8 = new Date(2015, 5, 1, 12, 32, 25); //月从0开始数 5代表6月!!!
console.log(date8);// 2.4 传入一个参数:格式(毫秒)
var date9 = new Date(2000)
console.log(date9)
2.2 Date的方法
var date1 = new Date();
console.log(date1.getFullYear());
console.log(date1.getMonth());
console.log(date1.getDate());
console.log(date1.getDay()); //星期
console.log(date1.getHours());
console.log(date1.getMinutes());
console.log(date1.getSeconds());
console.log(date1.getMilliseconds());
// 距离1970-01-01的毫秒数
console.log(date1.getTime());// 设置年份 ....星期一般不用设置
date1.setFullYear(2015);
// date.setDate();
console.log(date1);// 装换成字符串 包含年月日分时秒
console.log(date1.toLocaleString());
// 包含年月日
console.log(date1.toLocaleDateString());
// 包含分时秒
console.log(date1.toLocaleTimeString())// 返回该日期距离1970年 1月1 日 0点的毫秒数
console.log(Date.parse('2016-10-10'));// 日期的运算
var d6 = new Date();
var d7 = new Date(2016, 10, 11);
console.log(d6-d7); // 毫秒数
3. 正则表达式
3.1 创建正则表达式
// 创建正则表达式
// 1、对象方法创建
// new RegExp('正则表达式','模式');
// g:全局查找
// i:不区分大小写
var r1 = new RegExp('nice');
var r2 = new RegExp('nice','g')
var r3 = new RegExp('nice','i')
var r4 = new RegExp('nice','gi')// 2、字面量创建
var r5 = /nice/;
var r6 = /nice/gi;//
var r7 = /[a-z]/;
3.2 正则的方法
var str1 = 'today is very good good Good'var r1 = /good/gi;
// 1、test():查找字符串中是否有符合要求的字符串
// 返回boolean
var result = r1.test(str1);
console.log(result) // true//2、exce():查找字符串中是否有符合要求的字符串
// 返回值类型:数组或null
// 返回数组 代表可以找到
// 返回null 代表查找结束或没有找打//当第一次执行exec时,从字符串开头开始查找,如果找到,返回匹配到的
//字符串和下标,当再一次执行时候,继续向下查找,返回匹配到下一个字符串
// 如果返回null 代表找不到或查找结束,然后下次执行从头查找// exec:会记录已经查找过的下标
// 当text与exec同时使用,test检验字符串时,如果能够符合要求
// 会记录找到的下标。
var resu1 = r1.exec(str1);
console.log(resu1); // good index 19 第二个good 由于test找了第一个good
var resu2 = r1.exec(str1);
console.log(resu2); // Good index 24
var resu3 = r1.exec(str1);
console.log(resu3); // null
var resu4 = r1.exec(str1);
console.log(resu4); // good index 14// 3、compile():修改正则表达式
r1.compile('nice'); /* r1 = /nice/ */
console.log(r1) // /nice/
3.3 字符串中应用正则
// 字符串切割
str1='a b c d f'
console.log(str1.split(/ +/))// 字符串替换
var str2 = 'nice good nice good'
console.log(str2.replace('nice', 'bad')) // 替换一次
console.log(str2.replace(/nice/g, 'bad'));// 字符串查找
var str3 = 'nice good nice good nice';
console.log(str3.search(/Good/i)); //返回一次查到的下标
3.4 正则的使用
// 点击按钮后 执行func函数
function func () {//获取输入框var i1 = document.getElementById("in1"); // id为in1的input输入框//获取文字var str1 = i1.value;IsString(str1)}function IsString (str) {if(str.length!=0){reg = /^[a-zA-Z0-9_]+$/;if(!reg.test(str)){alert('您输入的字符串格式不正确')}else{alert('正确')}}else{alert('您输入的内容为空')}
}
Javascript BOM简介
Javascript ECMA-3 (数组,Date,正则)相关推荐
- javascript 无法修改 数组中对象_如何使用JavaScript中的Date对象
Date对象是一个内置函数,我们可以使用Date对象来显示日期,本篇文章就来给大家分享一篇有关于Date对象的使用方法. 内置函数我们可以使用new来创建 var 对象名称= new object() ...
- 遍历JavaScript中的数组
在Java中,可以使用for循环遍历数组中的对象,如下所示: String[] myStringArray = {"Hello", "World"}; for ...
- JavaScript 对象与数组参考大全
http://www.cnblogs.com/meil/archive/2006/06/28/437527.html本文列举了各种JavaScript对象与数组,同时包括对上述每一对象或数组所完成工作 ...
- JavaScript中的数组和字符串
知识内容: 1.JavaScript中的数组 2.JavaScript中的字符串 一.JavaScript中的数组 1.JavaScript中的数组是什么 数组指的是数据的有序列表,每种语言基本上都有 ...
- JavaScript中字符串数组赋值失败,不是每个字符串,却是字符。
我的处女作<Canvas系列教程>在我的Github上正在连载更新,希望能得到您的关注和支持,让我有更多的动力进行创作. 教程介绍.教程目录等能在README里查阅. 传送门:https: ...
- 如何在JavaScript中比较数组?
本文翻译自:How to compare arrays in JavaScript? I'd like to compare two arrays... ideally, efficiently. 我 ...
- 如何检查变量是否是JavaScript中的数组? [重复]
本文翻译自:How do you check if a variable is an array in JavaScript? [duplicate] This question already ha ...
- JavaScript对象和数组
在JavaScript中对象是一种数据结构,用于将数据和功能组织在一起,描述一类对象所具有的属性和方法. 对象是某个特定类型的实例.新对象是new操作符后跟一个关键字来实现的.构造函数本身就是一个函数 ...
- Javascript如何改变数组的长度?
修改数组长度 使用"数组名.length"可以获取或修改数组的长度.数组长度的计算方式为数组中元素的最大索引值加1,示例代码如下. var arr = ['a', 'b', 'c' ...
- JavaScript实现以数组形式返回斐波那契数列fibonacci算法(附完整源码)
JavaScript实现以数组形式返回斐波那契数列fibonacci算法(附完整源码) fibonacci.js完整源代码 fibonacci.js完整源代码 export default funct ...
最新文章
- 信息系统项目管理案例2
- 4.SharePoint的权限
- 如何确保您的Progressive Web App保持其Lighthouse审核分数
- HDU - 5919 Sequence II
- 查看ie保存的表单_小学信息技术gt;搜索保存网页教师资格证面试模板
- Google Go 初识
- 数据通过蓝牙传输中...70.46k/s
- 我可以在同一个catch子句中捕获多个Java异常吗?
- 如何在C ++中使用std :: getline()?
- 获取视图尺寸大小方法
- 【读书笔记】iOS-Web应用程序的自动化测试
- 基于Spark的电影推荐系统(推荐系统~3)
- 小白教程系列——XMind8 Pro下载安装
- 导入以及导入模板下载
- 8.2 向量数量积与向量积(点乘与叉乘)
- word文档正文页码从1开始
- 【文件处理】python 在线预览文件_OFFICE 文档转换为html在线预览
- windows 7 32bit安装 python3.5.0 安装错误 0x80240017 -未指定错误
- 【PHP小皮】使用教程
- options 请求