JavaScript 重点笔记
JavaScript 重点笔记
## 数组
// 必须掌握
- arr.length:获取数组元素的长度
- arr.splice(起始位置,长度):从数组中添加或删除元素。
- arr.indexOf():获取指定元素在数组中的位置,不存在返回-1
- arr.sort([函数:排序规则]):排序(默认采用字符串顺序排序,数字排序则需要通过自定义函数实现)
- arr.join(str):将arr以指定字符连接成字符串 // 次重点
- arr.push():在数组末尾推入指定元素
- arr.pop():弹出并返回数组末尾元素
- arr.shift():弹出并返回数组第一个元素
- arr.unshift():在数组开头处添加指定元素 // 都必须理解,之后复习,我们能够马上 捡起来
- arr.concat():合并数组
- arr.reverse():数组元素顺序反转
- arr.lastIndexOf():获取指定元素最后一次出现的位置,不存在返回-1
- arr.slice(起始位置,结束位置):获取数组中指定的片段(不包含结束位置) - arr.every():检测数值元素的每个元素是否都符合条件。
- arr.map():通过指定函数处理数组的每个元素,并返回处理后的数组。
- arr.filter():检测数值元素,并返回符合条件所有元素的数组。
- arr.some():检测数组元素中是否有元素符合指定条件。 ## 正则
正则帮助我们 验证 字符是否合法 var reg = /表达式/模式修正符;
var reg = new RegExp(表达式,模式修正符); 1.元字符
- [0-9]:任意一个数字
- [a-z]:任意一个小写字母
- [x|y]:匹配x或者y(匹配其中的一个)
- [^0-9]:匹配一个任意非数字
- [\d]:任意一个数字
- [\s]:任意一个空白字符(\r\n\t)
- [\w]:约等于A-Za-z0-9_
- ^[a-z]{6,12}$:必须是6-12位的字母 2.量词
- * 相当于{0,} 任意数量
- + 相当于{1,} 至少一个
- ? 相当于{0,1} 至多一个
- {6,18} 3. 模式修正符
- i:不区分大小写
- g:执行全局匹配
数组
var arr = [];
var arr = new Array(); arr.length:数组元素的个数 arr.splice(start,length):删除数组中从start位置开始的length个元素
arr.join(字符):将数组元素以指定字符连接
arr.indexOf(值):判断值是否在arr数组中,如果在返回索引值,不在返回-1
arr.sort():排序(默认是以字符串顺序排序) 13 < 8
arr.sort(function(a,b){return a-b;}):排序(以数字顺序排序) 13 > 8 arr.slice(start,end):获取数组中从start位置开始,到end位置结束(不包含)的元素 正则
var reg = /正则表达式/模式修正符;
var reg = new RegExp(表达式,修正符) 三要素:修正符 元字符 量词 修正符
g:全局匹配
i:忽略大小写(验证码,网站上的一些关键字不区分大小写)
元字符
[0-9]:任意一个数字
[a-z]:任意一个小写字母
[A-Z]:任意一个大写字母
[A-z]:任意一个字母
[abcd]:abcd中任意一个
[^abcd]:除abcd之外的任意一个
[^0-9]:除数字之外的任意一个字符
量词:
{1,3}:至少一个,至多3个
{1,}:至少一个
{1}:只能一个 *:任意数量
+:至少一个
?:至多一个 ():将括起来的内容作为一个整体
^表达式$:完全限制了字符串必须全部符合正则的要求
.:任意一个字符
.*:任意数量的任意字符(不包含\n\r)
.*?:拒绝贪婪匹配
red|blue|green:或者red或者blue或者green \r:回车
\n:换行
\t:tab制表符 正则表达式的原则:将所有可能的值全部罗列出来,然后进行相关的正则书写 元字符
\w:
\W: reg.test(str):检验str是否符合reg的要求,符合返回true,不符合返回false 补充内容 inp.value
inp.value = '123456' inp.checked
inp.checked = true 新的内容 - 事件
JS = ECMAScript + BOM + DOM JS是一门基于对象和事件驱动的弱类型脚本语言
基于对象:万物皆对象(属性+方法)
事件驱动:当满足某一个条件的时候,函数自动执行
btn.onclick = function(){}:当点击的时候,函数自动执行
inp.onblur = funciton():当input失去焦点的时候,函数自动执行 四类事件:
鼠标事件
onclick:当点击的时候,自动执行
ondblclick:当双击的时候,自动执行
oncontextmenu:当右击的时候,自动执行
键盘事件
window事件
表单事件:onblur 全选和全不选的扩展作业完成:不用敲7-9
JavaScript 重点笔记的更多相关文章
- javascript重点笔记
操作符之间的优先级(高到低):算术操作符 >比较操作符 >逻辑操作符 >"="赋值符号 算术运算符
- javascript高级笔记——内含事件,DOM,BOM等
JavaScript高级笔记 1,DOM的简单学习 1.1,功能:用于控制HTML文档的内容: 1.2,获取页面标签对象:Element *document.getElementById(" ...
- 《编写可维护的JavaScript》 笔记
<编写可维护的JavaScript> 笔记 我的github iSAM2016 概述 本书的一开始介绍了大量的编码规范,并且给出了最佳和错误的范例,大部分在网上的编码规范看过,就不在赘述 ...
- Javascript学习笔记四——操作表单
Javascript学习笔记 大多网页比如腾讯,百度云之类的需要登陆,用户输入账号密码就可以登陆,那么浏览器是如何获取用户的输入的呢?今天就记录一下操作表单. 操作表单与操作DOM是差不多的,表单本身 ...
- Javascript学习笔记三——操作DOM(二)
Javascript学习笔记 在我的上一个博客讲了对于DOM的基本操作内容,这篇继续巩固一下对于DOM的更新,插入和删除的操作. 对于HTML解析的DOM树来说,我们肯定会时不时对其进行一些更改,在原 ...
- Javascript学习笔记二——操作DOM
Javascript学习笔记 DOM操作: 一.GetElementById() ID在HTML是唯一的,getElementById()可以定位唯一的一个DOM节点 二.querySelector( ...
- Java编程思想重点笔记(Java开发必看)
Java编程思想重点笔记(Java开发必看) Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而 ...
- C++编程思想重点笔记(下)
上篇请看:C++编程思想重点笔记(上) 宏的好处与坏处 宏的好处:#与##的使用 三个有用的特征:字符串定义.字符串串联和标志粘贴. 字符串定义的完成是用#指示,它容许设一个标识符并把它转化为字符串, ...
- JavaScript基础笔记二
一.函数返回值1.什么是函数返回值 函数的执行结果2. 可以没有return // 没有return或者return后面为空则会返回undefined3.一个函数应该只返回一种类型的值 二.可变 ...
随机推荐
- 理解C语言中几个常见修饰符
写在前面 今天下午一个同事问「register」关键字是什么作用?噢,你说的是「register」啊,它的作用是……脑袋突然断片儿,我擦,啥意思来着,这么熟悉的陌生感.做C语言开发时间也不短了,不过好 ...
- TensorFlow-谷歌深度学习库 体验一二三
一个TensorFlow的运算可以看作是一个数据流图. 一个图呢则由一组操作和数据集组成. 操作(operation)代表运算单元 数据(tensor) 代表在各运算单元流动的数据单元 要想使用一个数 ...
- TPYBoard v102 DIY照相机(视频和制作流程)
前段时间的帖子,利用TPYBoard v102做的DIY照相机,周末实物终于做出来了,加了两个按键模块和一个5110,做的有点糙啊----望大家勿怪,哈哈哈.拍出来图片还算清晰,串口摄像头模块用的30 ...
- linux --> Linux 的启动流程
Linux 的启动流程 操作系统接管硬件以后发生的事情,也就是操作系统的启动流程. 因为在BIOS阶段,计算机的行为基本上被写死了,程序员可以做的事情并不多:但一旦进入操作系统,程序员几乎可以定制所有 ...
- location和location.href跳转url的区别
使用 location = url 跳转,如果本地之前已经载入过该页面并有缓存,那么会直接读取本地的缓存,缓存机制是由本地浏览器设置决定的.状态码为: 200 OK (from cache) . ...
- c语言函数作业
一.PTA实验作业 6-3 使用函数判断完全平方数 1. 本题PTA提交列表 2. 设计思路 1.利用由题目给定的int IsSquare( int n )进行操作 2.首先判断n是否大于0. 3.若 ...
- Beta敏捷冲刺每日报告——Day2
1.情况简述 Beta阶段Scrum Meeting 敏捷开发起止时间 2017.11.2 00:00 -- 2017.11.3 00:00 讨论时间地点 2017.11.2 晚9:30,电话会议会议 ...
- Beta阶段敏捷冲刺报告-DAY4
Beta阶段敏捷冲刺报告-DAY4 Scrum Meeting 敏捷开发日期 2017.11.5 会议时间 11:30 会议地点 羽毛球场 参会人员 全体成员 会议内容 bug的原因讨论, 测试内容安 ...
- 201621123050 《Java程序设计》第5周学习总结
1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词 答:接口.has-a.comparable 1.2 尝试使用思维导图将这些关键词组织起来.注:思维导图一般不需要出现过多的字. ...
- 学生ID查询
var http = require("http"); var server = http.createServer(function(req,res){ //得到url var ...