js学习笔记第二篇

Js笔记整理

1、StringAPI

a)        大小写转换:str.toUpperCase();str.toLowerCase();

b)        获取指定位置字符:

  1. Str[i]--->倒数第二个str[str.length-2]
  2. str.charAt(i)
  3. str.charCodeAt(i);返回字符的Unicode吗?

c)  查找关键字的位置:

I.var i=str.indexOf(“kword”[,starti]);如果找不到返回-1,starti默认为0

Ii var i=str.lastIndexOf(“kword”[,starti]);查找starti位置左侧第一次出现的关键字  statri默认是length-1

d) 获取子字符串:

I  var subStr=str.substring(starti[,endi+1]);

Ii  var subStr=str.substring(starti[,endi+1]);不支持负数参数

Iii  var subStr=str.substring(starti,取几个);

例题:获取用户名和域名。

Function(){

Var i=email.indexOf(“@”);

Var userName=email.slice(0,i);

Var domain=email.slice(i+1);

Alert(“用户名”+username);

Alert(“域名”+domain);

}

<button onclick=”mail(prompt(‘输入邮箱’))”>输入邮箱<button>

2、String API 2

a)        分隔字符串:var arr=str.split(“分隔符”);

  1. Arr中以数组的形式保存每段字符串。
  2. 固定套路:将字符串切割为字符数组:var chars=str.split(“”);
    1. 例子:  var a="hello";

var chars=a.split("");

console.log(chars);

Iii  模式匹配:2种

1.var i=str.search(/keword/i);只能从开始位置,赵第一个匹配的关键字。

2.var arr=str.match(/kword/ig);

a)        arr中保存了所有关键字的内容

b)        arr.length表示匹配的关键字的个数

c)        *如果没找到,返回null*

d)       *都要先判断是否为null,再处理!*

3.Var newStr=str.replace(模式,“替换内容”);

例题:

var kword=/no/ig;

var reply=prompt("输入回复");

var arr=reply.match(kword);

reply=reply.replace(kword,"**");

alert(reply);

alert("共替换"+(arr?arr.length:0)+"处");

2、正则表达式:

a)        专门规定字符串格式中字符格式规则的表达式。

b)        何时使用:只要定义字符串格式规则,都是用正则表达式。

c)        预定义字符集:\d ==>[0-9]一位数字

  1. \W ==>[0-9a-zA-Z];1位数字,字母或下划线。
  2. \s ==》[空字符]代表一位空字符:空格,tab符。
  3. .  除了换行以外,其他所有字符。

d)量词:规定一个字符集出现的次数:2种

明确数量:3种:{min,max}:最少min位,最多max位

{min,}:至少min位

{n}:必须n位

身份证号:至少15位数字

2位数字

最后一位数字或x X

后三位可有可无,但最多出现1次

\d{15}(\d{2}[0-9xX])?

不确定数量:3种:

?==>{0,1}: 可有可无,最多1次

*==>{0,}:可有可无,多了数量不限

+==>{1,}:至少一次,多了数量不限

手机号:+86或0086 可有可无,最多1次

空字符可有可无,多了数量不限

1

从3,4,5,7,8选一个

最后必须是9位数字

(\+86|0086)?\s*1[34578]\d{9}

时间: 2024-12-27 13:43:58

js学习笔记第二篇的相关文章

java学习笔记 第二篇 核心技术(二)

第十四章 集合类 集合类用来存放对象的引用.继承关系如下图: 14.1 Collection 接口 是层次结构中的根接口,构成Collection的单位称为元素.Collection接口不能直接使用,但该接口提供了添加元素.删除元素.管理数据的方法. Collection接口常用方法: 14.2 List 集合 包括List接口以及List集合的所有实现类.List集合中的元素允许重复,各元素循序就是对象插入的顺序 1.List接口,两个重要方法: get(int index): 获取指定索引位

Android学习笔记(第二篇)View中的五大布局

PS:人不要低估自己的实力,但是也不能高估自己的能力.凡事谦为本... 学习内容: 1.用户界面View中的五大布局... i.首先介绍一下view的概念   view是什么呢?我们已经知道一个Activity是Android的显示层,但是Activity是不能直接显示在屏幕上的,它也像JSP那样,显示的东西是html,那么Android也不例外,Activity是一个抽象的壳子,而显示的东西就是view或者是viewgroup(图形用户组件)....   有了这个概念,我们就清楚view是如何

Node 之 Express 学习笔记 第二篇 Express 4x 骨架详解

周末,没事就来公司加班继续研究一下Express ,这也许也是单身狗的生活吧. 1.目录结构: bin, 存放启动项目的脚本文件 node_modules, 项目所有依赖的库,以及存放 package.json 中安装的模块,当你在 package.json 添加依赖的模块并安装后,存放在这个文件夹下 public,静态文件(css,js,img) routes,路由文件(MVC中的C,controller) views,页面文件(jade模板),后期打算换成 Ejs 模板搞搞 package.

JS学习笔记-构造函数篇

创建实例 funtion Fn (){ var num = 10; this.x = 100; this.getX = function(){ console.log(this.num); } } var f1 = new Fn; f1.getX(); 最后执行的结果是:undefined 说明: 类有普通的里面,当函数执行的时候,var num只是当的形成的私有作用域中的私有变量而已,它和我们的f1这个实例没有任何的关系,只有this.xxx=xx才相当于给f1增加私有的属性和方法,才和我们的

Vue学习笔记入门篇——组件的内容分发(slot)

本文为转载,原文:Vue学习笔记入门篇--组件的内容分发(slot) 介绍 为了让组件可以组合,我们需要一种方式来混合父组件的内容与子组件自己的模板.这个过程被称为 内容分发 (或 "transclusion" 如果你熟悉 Angular).Vue.js 实现了一个内容分发 API,使用特殊的 'slot' 元素作为原始内容的插槽. 编译作用域 在深入内容分发 API 之前,我们先明确内容在哪个作用域里编译.假定模板为: <child-component> {{ messa

Vue学习笔记入门篇——组件的使用

本文为转载,原文:Vue学习笔记入门篇--组件的使用 组件定义 组件 (Component) 是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能.在有些情况下,组件也可以是原生 HTML 元素的形式,以 is 特性扩展. 组件使用 注册 注册一个全局组件,你可以使用 Vue.component(tagName, options).组件在注册之后,便可以在父实例的模块中以自定义元素 的形式使用.

[Pro Angular.JS]学习笔记1.1:设置开发环境

可以使用yeoman.io,很方便.我已经写了一篇随笔,介绍如何使用.这里也有一篇介绍的文章:http://www.cnblogs.com/JoannaQ/p/3756281.html 代码编辑器,在Mac下用了一下WebStorm,太恶心了.另外发现书的作者使用的开发环境是Windows + VS Express 2013,为了方便学习,我也使用VS Express 2013 Update2.VS2013用起来蛮舒服的,把WebStorm比得跟驼屎一样.也许是因为我没用习惯吧. 1.安装Nod

《javascript权威指南》读书笔记——第二篇

<javascript权威指南>读书笔记--第二篇 金刚 javascript js javascript权威指南 今天是今年的196天,分享今天的读书笔记. 第2章 词法结构 2.1 字符集 JavaScript程序是用Unicode字符集编写. Unicode是ASCII和Latin-1的超集,支持几乎所有语言. ES3 要求支持Unicode 2.1及后续版本 ES5 要求支持Unicode 3及后续版本 2.1.1 区分大小写 JavaScript是区分大小写的. HTML 并不区分大

【转】Backbone.js学习笔记(二)细说MVC

文章转自: http://segmentfault.com/a/1190000002666658 对于初学backbone.js的同学可以先参考我这篇文章:Backbone.js学习笔记(一) Backbone源码结构 1: (function() { 2: Backbone.Events // 自定义事件 3: Backbone.Model // 模型构造函数和原型扩展 4: Backbone.Collection // 集合构造函数和原型扩展 5: Backbone.Router // 路由