• 计算机基础知识45


    JS的RegExp对象(正则)

    text: 正则校验数据         # T/F

    match: 匹配     #  (3) ['s', 's', 's']

    1. //定义
    2. var reg1 = new RegExp("^[a-zA-Z][a-zA-Z0-9]{5,11}");
    3. var reg2 = /^[a-zA-Z][a-zA-Z0-9]{5,9}$/;
    4. //正则校验数据
    5. var res = reg1.test('jason666');
    6. console.log(res);
    7. //全局匹配
    8. var s1 = 'egonsb dsb dsb';
    9. var res1 = s1.match(/s/); //第一个s的位置
    10. var res2 = s1.match(/s/g); //大小写都能匹配
    11. var res3 = s1.match(/s/gi); //i:忽略大小写
    12. console.log(res1);
    13. console.log(res2);
    14. console.log(res3);

    JS的Math对象

    1. abs(x) 返回数的绝对值。
    2. exp(x) 返回 e 的指数。
    3. floor(x) 对数进行下舍入。
    4. log(x) 返回数的自然对数(底为e)。
    5. max(x,y) 返回 x 和 y 中的最高值。
    6. min(x,y) 返回 x 和 y 中的最低值。
    7. pow(x,y) 返回 x 的 y 次幂。
    8. random() 返回 0 ~ 1 之间的随机数。
    9. round(x) 把数四舍五入为最接近的整数。
    10. sin(x) 返回数的正弦。
    11. sqrt(x) 返回数的平方根。
    12. tan(x) 返回角的正切。

    前端基础之BOM和DOM

    # JavaScript包括三部分:

             ECMAScript核心语法+DOM(操作一些文档:css、HTML)+BOM(浏览器相关的)

    BOM(Browser Object Model)是指浏览器对象模型,它使 JS 有能力与浏览器进行“对话”
       DOM(Document Object Model)是指文档对象模型,通过它可以访问HTML文档的所有元素

    BOM之window对象

    # 所有浏览器都支持 window 对象。它表示浏览器窗口

    # 一些常用的Window方法:

    • window.innerHeight - 浏览器窗口的内部高度
    • window.innerWidth - 浏览器窗口的内部宽度
    • window.open() - 打开新窗口
    • window.close() - 关闭当前窗口

    # 当你访问一个链接的时候,如果是通过浏览器访问的,请求头中会自动携带User-Agent参     数,有了这个参数,说明此时来的请求是人访问的(浏览器访问的)

    # 我们访问一个链接地址时,可以通过浏览器发起请求,还可以通过程序去访问 

    # window的子对象:

               navigator对象\screen对象\history对象\location对象\弹出框\计时相关

    1. navigator.appName  // Web浏览器全称
    2. navigator.appVersion  // Web浏览器厂商和版本的详细字符串
    3. navigator.userAgent  // 客户端绝大部分信息
    4. navigator.platform   // 浏览器运行所在的操作系统
    5. screen.availWidth //可用的屏幕宽度
    6. screen.availHeight //可用的屏幕高度
    7. history.forward() // 前进一页
    8. history.back() // 后退一页
    9. location.href //获取URL
    10. location.href="URL" // 跳转到指定页面
    11. location.reload() //重新加载页面

    #  弹出框: 警告框、确认框、提示框

    1. alert("你看到了吗?"); //警告框经常用于确保用户可以得到某些信息
    2. confirm("你确定吗?") //确认框用于使用户可以验证或者接受某些信息
    3. prompt("请在下方输入","你的答案") //提示框经常用于提示用户在进入页面前输入某个值

    # 计时相关:

    1. // 在指定时间之后执行一次相应函数
    2. var timer = setTimeout(function(){alert(123);}, 3000)
    3. // 取消setTimeout设置
    4. clearTimeout(timer);

    # 案例:计时器+弹出框

    1. function func2() {
    2. alert(123)
    3. }
    4. function show(){
    5. let t = setInterval(func2,3000); // 每隔3秒执行一次
    6. function inner(){
    7. clearInterval(t) // 清除定时器
    8. }
    9. setTimeout(inner,9000) // 9秒中之后触发
    10. }
    11. show()

    DOM的概要

    # DOM标准规定HTML文档中的每个成分都是一个节点(node):

    • 文档节点(document对象):代表整个文档
    • 元素节点(element 对象):代表一个元素(标签)
    • 文本节点(text对象):代表元素(标签)中的文本
    • 属性节点(attribute对象):代表一个属性,元素(标签)才有属性
    • 注释是注释节点(comment对象)

    # JavaScript 可以通过DOM创建动态的 HTML:

    • JavaScript 能够改变页面中的所有 HTML 元素
    • JavaScript 能够改变页面中的所有 HTML 属性
    • JavaScript 能够改变页面中的所有 CSS 样式
    • JavaScript 能够对页面中的所有事件做出反应

    DOM之查找标签

    直接查找:

    1. document.getElementById 根据ID获取一个标签
    2. document.getElementsByClassName 根据class属性获取
    3. document.getElementsByTagName 根据标签名获取标签合集

    间接查找:

    1. parentElement 父节点标签元素
    2. children 所有子标签
    3. firstElementChild 第一个子标签元素
    4. lastElementChild 最后一个子标签元素
    5. nextElementSibling 下一个兄弟标签元素
    6. previousElementSibling 上一个兄弟标签元素

    DOM之节点操作

    1、 创建节点/添加节点/删除节点/属性节点

    # 创建img标签:

    1. "d1">
    2. 宇宙山河烂漫 人间点滴温暖都值得我前进
  • <script>
  • var img = document.createElement('img'); //
  • var div = document.getElementById('d1');
  • // 增加属性
  • img.src = 'https://img0.baidu.com/it/u=3314295636,4109132557&fm=253&fmt=auto&app=138&f=JPEG?w=889&h=500';
  • img.alt = '尊嘟假嘟'
  • img.id = 'img1';
  • // 如果是点语法,只能够增加自带的属性,自定义的属性用setAttribute
  • img.setAttribute('username', 'kevin');
  • // 获取一个属性
  • console.log(img.getAttribute('username'))
  • // 删除
  • img.removeAttribute('username');
  • // 把图片放到div中
  • div.appendChild(img);
  • console.log(img);
  • script>
  • # 创造a标签:

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>Titletitle>
    6. <body>
    7. <div id="d1">div>
    8. <script>
    9. // 创建a标签
    10. var a = document.createElement('a'); //
    11. var div = document.getElementById('d1');
    12. // 增加属性
    13. a.href = 'http://www.baidu.com';//
    14. a.title = '好好玩*';
    15. a.setAttribute('username', ' aaa');
    16. a.getAttribute('username')
    17. a.innerHTML = '

      一定要开心鸭~

      '
      ;
    18. // 把a网址放到div中
    19. div.appendChild(a);
    20. console.log(a);
    21. script>
    22. body>
    23. html>

    2、 获取值操作语法:elementNode.value

       适用于以下标签:

                 .input / .select / .textarea / value不能获取文件数据,获取文件数据要用files

    1. var iEle = document.getElementById("i1");
    2. console.log(iEle.value);

    3、指定CSS操作

    1. className 获取所有样式类名(字符串)
    2. classList.remove(cls) 删除指定类
    3. classList.add(cls) 添加类
    4. classList.contains(cls) 存在返回true,否则返回false
    5. classList.toggle(cls) 存在就删除,否则添加

    DOM之事件

    # 常用事件:

    1. onclick 当用户点击某个对象时调用的事件句柄。
    2. ondblclick 当用户双击某个对象时调用的事件句柄。
    3. onfocus 元素获得焦点。 // 练习:输入框
    4. onblur 元素失去焦点。
    5. //应用场景:用于表单验证,用户离开某个输入框时,代表已经输入完了,我们可以对它进行验证.
    6. onchange 域的内容被改变。
    7. //应用场景:通常用于表单元素,当元素内容被改变时触发.(select联动)
    8. onkeydown 某个键盘按键被按下。
    9. //应用场景: 当用户在最后一个输入框按下回车按键时,表单提交.
    10. onkeypress 某个键盘按键被按下并松开。
    11. onkeyup 某个键盘按键被松开。
    12. onload 一张页面或一幅图像完成加载。
    13. onmousedown 鼠标按钮被按下。
    14. onmousemove 鼠标被移动。
    15. onmouseout 鼠标从某元素移开。
    16. onmouseover 鼠标移到某元素之上。
    17. onselect 在文本框中的文本被选中时发生。
    18. onsubmit 确认按钮被点击,使用的对象是form。

    # 方式1:this是实参,表示触发事件的当前元素,函数定义过程中的ths为形参

    1. "d1" onclick="changeColor(this);">点我
    2. <script>
    3. function changeColor(ths) {
    4. ths.style.backgroundColor="green";
    5. }
    6. script>

    # 方式二:用的多

    1. "d2">点我
    2. <script>
    3. var divEle2 = document.getElementById("d2");
    4. divEle2.onclick=function () {
    5. this.innerText="呵呵";
    6. }
    7. script>

    事件示例--开关灯

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>Titletitle>
    6. <meta name="viewport" content="width=device-width, initial-scale=1">
    7. <style>
    8. .c1 {
    9. height: 400px;
    10. width: 400px;
    11. border-radius: 50%;
    12. }
    13. .bg_green {
    14. background-color: greenyellow;
    15. }
    16. .bg_red {
    17. background-color: red;
    18. }
    19. style>
    20. head>
    21. <body>
    22. <div id="d1" class="c1 bg_red bg_green">div>
    23. <button id="d2">变色button>
    24. <script>
    25. let btnEle = document.getElementById('d2')
    26. let divEle = document.getElementById('d1')
    27. btnEle.onclick = function () { // 绑定点击事件
    28. // 动态的修改div标签的类属性
    29. divEle.classList.toggle('bg_red')
    30. }
    31. script>
    32. body>
    33. html>

    事件示例--input事件

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>Titletitle>
    6. <meta name="viewport" content="width=device-width, initial-scale=1">
    7. head>
    8. <body>
    9. <input type="text" value="老板 去吗?" id="d1">
    10. <script>
    11. let iEle = document.getElementById('d1')
    12. // 获取焦点事件
    13. iEle.onfocus = function () {
    14. // 将input框内部值去除
    15. iEle.value = ''
    16. // 点value就是获取 等号赋值就是设置
    17. }
    18. // 失去焦点事件
    19. iEle.onblur = function () {
    20. // 给input标签重写赋值
    21. iEle.value = '没钱 不去!'
    22. }
    23. script>
    24. body>
    25. html>

    定时器示例

    1. html>
    2. <html lang="en">
    3. <head>
    4. <meta charset="UTF-8">
    5. <title>Titletitle>
    6. <meta name="viewport" content="width=device-width, initial-scale=1">
    7. head>
    8. <body>
    9. <input type="text" id="i1">
    10. <button id="b1">开始button>
    11. <button id="b2">结束button>
    12. <script>
    13. var t; //全局变量
    14. function showTime() {
    15. var i1Ele = document.getElementById('i1');
    16. var time = new Date(); //现在的时间
    17. i1Ele.value = time.toLocaleString();
    18. }
    19. showTime(); //调用
    20. var b1Ele = document.getElementById('b1');
    21. b1Ele.onclick = function (ev) {
    22. if (!t){
    23. t = setInterval(showTime,1000) //每隔一秒刷新一次
    24. }
    25. };
    26. var b2Ele = document.getElementById('b2');
    27. b2Ele.onclick = function (ev) {
    28. clearInterval(t); //清除定时器
    29. t = undefined //什么都没有
    30. };
    31. script>
    32. body>
    33. html>

    今日思维导图:

  • 相关阅读:
    分布式调度Zookeeper常用Shell命令【云原生】
    如何在一台电脑上运行两个及以上Tomcat服务器
    Zemax操作40--序列模式中LD光源模拟
    【Linux学习笔记】代码编辑工具vim
    Java正则表达式正确,find()方法返回false,可能是因为\s无法匹配空格
    SpringBoot测试方法说明
    TCP/IP(九)TCP的连接管理(六)TIME_WAIT状态探究
    轻松学习 Spring 事务
    21天学Python --- 打卡2:Regular Expression
    工作杂记-YUV的dump和read
  • 原文地址:https://blog.csdn.net/qq_48064830/article/details/134269812