JS第三周知识点

第一天

1:js(应用类型):11个
1:string(字符串) 2:Number(数字) 3:Boolean(布尔)
4:Array(数组) 5:Function(函数) 6:Date(日期)
7:Math(数学) 8:RegEXP(正则) 9:Error(错误)
10:Object(面向对象) Global(全局对象)
其中 string Nubmer Boolean:具有包装类型
包装类型
专门封装原始类型的值,将原始类型悄悄的变成引用类型的对象(属性和方法)
why :前辈们觉得比如字符串经常会被我们拿来做一些操作,为了方便我们,提供了包装类型,把字符串变成一个对象,提供了我们一些操作字符串的属性和方法。本身原始类型的值,不带任何属性和方法,意味着不能使用,去做操作的
何时使用:只要你试图使用,去操作原始类型的值得时候,包装类型就会悄悄出现。
何时释放:方法一旦调用结束,包装类型就会自动释放
为什么undefined和null不能使用?
因为他们两没有提供过包装类型(没有任何的属性和方法)
Global(全局对象)
1:保存着全局变量和全局函数,只不过浏览器端/客户端/前端global被window代替的
2:唯独window对象可以省略不写
2:字符串API
1:转义字符:
1:何时使用:在字符串中出现和程序冲突的字符
2:具有特殊功能:\n换行 \t制表符 :敲tab键带来的一个打空格
3:可以书写unicode号代表一个字 \u 举例:汉字的第一个字 \u4e00 汉字最后一个字:\u9fa5
2:英文转大小写
(统一的)将字符串转为大写或者小写,再比较,忽略大小写(验证码时使用),
固定验证码,两者统一修改大写或者小写, 随机验证码
大写:var upper=str.toUpperCase()
小写:var lower=str.toLowerCase()
3:获取字符串中某个字符:
str.charAt(i);—str[i]
4:获取字符串中某个字符的ascii码
var ascii=str.charCodeAt(i);
通过ascii码转回原文:
原文=string.fromCharCode(ascii)
5:检索字符串:检查索引/下标
何时:判断有没有,不重复。
var i=str.indexof(“关键字”,starti)
特殊:
1:starti可以省略,如果省略默认从0位置开始查找
2:返回:如果找到了,返回关键字的么一个字符的下标;如果没找到返回的是-1,
重点:我们其实根本不关心下标为几,我们只关心下标为不为-1,为-1说明没有,如果不为-1说明存在.
6:拼接字符串:
var newstr=str.concat(str1,str2) 不如加运算
7:截取字符串
1:var substr=str.slie(starti,endi+1);字符串和数组都可以使用
2:var substr=str.substring(starti,endi+1)//几乎和slice一致,但是不如slice,因为不支持负数参数
3:var substr=str.substr(starti,n)//截取的个数,不必考虑含头不含尾
8:替换字符串
var newStr=str.replace(“关键字”,“新内容”);
正则:var newStr=str.replace(”“固定关键字"/RegExp,"新内容“): 可以替换所有关键字
9:切割/分割字符串
var arr=str.split(“自定义切割符”)
特殊:切割是可以自定义的,切割后会返回一个数组数组中不在包含切割符,如果传入的切割符“”空字符,每一个字符都会被切散.
10:随机数公式
var r=parselnt(Math.random()*arr.length)
11:js创建页面元素并且渲染上DOM树
1:创建空标签:
var 新元素=document.createElement(“标签名”)
2:为此标签设置必要的属性和事件
新元素.属性名=“属性值”
新元素.on事件名=function(){操作}
3:把新元素上DOM树 ,父元素.appendChild(新标签)
12:焦点事件
失去焦点事件,只有input能用
v.οnblur=function(){操作}

第二天

1:正则表达式
什么是正则:定义字符串中(字符出现的规则)的表达式
何时使用:切割、替换、验证
如何使用:
1:最简单的正则:
关键字原文但是写法和以前字符串不同,“需要替换的字符”=> /替换的字符 /ig i:忽略大小写 g:全部,替换话默认替换第一个匹配到的关键字
2:备选字符集
一个备选字符集:规定一位字符可能出现的情况
何时使用:只有关键字有多重情况的时候
如何使用:/[备选字符集]/
强调:1:一个中括号,只能管一个字
2:问题:正则默认只要满足后,就不管后续操作,后续用户就可以随意
解决 (只要是做验证),我们肯定希望用户完全按照我们的规则来,必须写/^ [备选字符集]/前加后加/前加^ 后加/前加后加的意思是要求用户从头到尾完全匹配
特殊如果备选字符集中有部分unicode号是连续的,则可以yoga-省略掉中间的部分
[\u4e00-\u9fa5]
一位数字:[0-9]
一位字母:[A-Zz-a]
一位数字、字母、下划线[0-9A-Za-z]
3:预定义字符集
前辈们提供定义的一些常用字符集
一个数字:\d
一个数字,字母,下划线 \w
一位空白字符:\s
问题预定义字符集是固定的,不够灵活,开发中优先使用预定义字符集,如果满足不了,再用备选字符集补充,
强调不管是备选字符集还是预定义字符集,一个都只管一位
4:量词
规定一个字符集出现的次数
如何让使用
1:有明确数量
字符集/^\d{2,4}KaTeX parse error: Undefined control sequence: \d at position 30: …少出现2次,最多出现4次 /^\̲d̲{2,}/ :前边相邻的数字0-9,最少出现2次,多了不限制
/^\d{2}$/ :前边相邻的数字0-9,必须出现2次
2:没有明确数量
字符集? :前边相邻的字符集,可有可无,最多一次
字符集* :前边相邻的字符集,可有可无,多了不限
字符集+ :前边相邻的字符集,至少

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值