API、DOM、获取元素、事件、文本节点、属性操作

news2024/11/18 3:25:24

单线程

进程

  • cpu 资源分配的最小单位
  • 一个进程可以有多个线程

线程

  • cpu调度的最小单位
  • 线程建立在进程的建立基础上的一次程序的运行单位

线程分为:单线程 多线程

  • 单线程:js是单线程 (同一个时间只能完成一个任务)
  • 多线程:百度是多线程

同步

  • 同步任务是指在主线程上排队的任务,只有当前一个任务执行完毕,才能执行下一个任务。需要等待的

异步

  • 异步任务不进入主线程,会进入任务队列,任务队列通知主线程,某个异步任务可以执行了,不需要等待

js中的异步操作

1、定时器函数
  • 1、回调函数:匿名函数作为参数

  • 2、 var 定时器名称 = setTimeout(回调函数,时间间隔)

    • 2000ms以后只执行一次,就结束

    • clearTimeout(定时器的名称)

      image-20240122114139550

  • 3、 var 定时器函数 = setInterval(回调函数,时间间隔)

    • 每隔1500ms执行一次,可以一直执行

    • clearInterval(定时器的名称)

      image-20240122114258498

  • 综合案例:
    image-20240122114449363

2、网络请求(ajax,aixos,wx.request
3、文件的读写(node)
4、Promise对象
5、generator函数
6、await/async函数
7、事件函数

预解析

  • JavaScript引擎在对JavaScript代码进行解释执行之前,会对JavaScript代码进行预解析在预解析阶段,会将以关键字var和function开头的语句块进行解析

以下情况会发生预备解析

1、函数声明的提升

image-20240122130658312

2、变量的提升(只是声明的提升,赋值不会提升)

image-20240124114602283

3、函数声明 函数名与变量声明的变量名重复,函数声明提升,变量不提升

image-20240122191727231

4、函数表达式不能提升

image-20240122131533226

5、提升不会超出作用域的范围

image-20240122131648104

6、函数声明,变量名重复 后面会覆盖

  • 后面会覆盖前面的

    image-20240124152300151

域解析案例:

  • 案例1:
    image-20240122153214458
  • 案例2:
    image-20240122153229625

作用域

全局作用域

1、范围:直接编写在script标签之中的js代码,或者编写在外部的js文件中的js代码
2、全局变量:在全局作用域中定义的变量。在任何作用域内都起作用
3、生命周期:浏览器打开时创建,关闭时销毁
4、所有的全局变量都是window对象的属性,所有的全局变量都是window对象的方法

局部作用域()

1、范围:有且只有函数才能产生局部作用域
2、局部变量:在局部作用域内定义的变量。只有在当前局部作用域内有效
3、生命周期:函数调用时创建,调用完成后立即销毁

隐式全局变量

1、在函数中没有var声明
2、在函数中没有用var声明,且用分号隔开
3、在函数中没有用var声明,且用=号隔开

image-20240122152611897

作用域链的查找规则

  • 先从当前的作用域内查找,如果有就返回如果没有就向上一级作用域内朝找,直到全局作用域,如果全局还没有,直接报错

对象

什么是对象?

  • 世间万物皆为对象
  • 电脑:
    • 特征:颜色、价格、尺寸… 对象的属性
    • 行为:敲代码、玩游戏、看视频… 对象的方法

js中的对象

  • 现实实物的一个抽象
  • 对象是无序属性的集合(属性名重复会发生覆盖)

创建对象的方式(四种)

1、字面量创建

image-20240122165402535

2、new Object()

image-20240122165640083

3、工厂模式

image-20240122170129754

4、构造函数

image-20240122170622700

对象属性值的获取和对象方法的调用

  • 对象.属性
  • 对象.方法()

构造函数

  • 1、函数
  • 2、模板
  • 3、函数的首字母一般大写

new关键字的作用:

  • 1、创建新对象===实例化对象
  • 2、可以让构造函数中的this指向实例化对象

函数中this的指向问题:

1、在构造函数中this指向实例化对象

2、在自定义对象的函数(方法)中指向this指向当前的对象

3、在普通函数中this指向window

4、函数中this指向:在时间函数中this指向事件源(学后面事件的时候会遇到)

image-20240122170743561

对象的遍历

  • for in 循环
  • for(x in obj){
    x是对象的属性名
    obj[x]是对象的属性值(不可以用 . )
    }

对象添加变量名

  • 对象[属性名] = “属性值”

image-20240122201925844

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1410765.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SRPC 框架服务端源码解析

0. RPC Context 保存某些必要的上下文信息; 某端独有功能:Client 获取请求成功或失败 1. RPCBuffer const 和 constexpr 变量的主要区别是:const 变量的初始化可以被推迟到运行期,constexpr 必须在编译期初始化;所…

剪映声音克隆;多位滴滴前中高层加入小红书提速商业化;中国和新加坡互免签证

今日精选 • 剪映推出 AI 音色克隆功能,录制 5 秒声音即可完成克隆• 商业化全面提速,多位滴滴前中高层加入小红书• 2 月 9 日起,中国和新加坡互免签证 科技动态 • 夸克上线大模型新产品“AI PPT”,可一键生成提纲、创作 PPT…

消息中间件之RocketMQ(三)

常见问题 1.重复消费 产生的原因是发送消息时采用了多数分布式消息中间件产品提供的最少一次(at least once)的投递保障,对于这个问题最常见的解决方案,就是消息消费端实现业务幂等,只要保持幂等性,不管来多少条重复消息,最后处…

码多多ChatAI智能聊天系统-一款好用的代码编程助手

码多多ChatAI智能聊天系统可以作为一款智能编程助手,帮助程序员提高编程效率,降低开发成本。 产品介绍 码多多ChatAI智能聊天系统是一款基于人工智能技术的编程辅助工具,它通过深度学习算法和大数据分析,为程序员提供智能代码提…

权威的健康养生与医学基础知识科普学习信息汇总

目录 1 关于健康与食物营养的权威网址1.1 世界卫生组织(World Health Organization: WHO)1.2 美国国家卫生研究院 (National Institutes of Health: NIH)1.3 澳大利亚政府健康门户 (Healthdirect)1.4 国际食品信息委员会 (International Food Informatio…

如何使用宝塔面板配置Nginx反向代理WebSocket(wss)

本章教程,主要介绍一下在宝塔面板中如何配置websocket wss的具体过程。 目录 一、添加站点 二、申请证书 三、配置代理 1、增加配置内容 2、代理配置内容 三、注意事项 一、添加站点 二、申请证书 三、配置代理 1、增加配置内容 map $http_upgrade $connection_…

【GitHub项目推荐--不错的 Electron开源项目】【转载】

eDEX-UI:超炫酷终端工具 eDEX-UI 是一款跨平台基于 Electron 的炫酷终端工具。好莱坞级别的终端使用体验,拥有漂亮的启动动画、浮夸的音效,还能够直观地展示文件目录、系统资源、网络等信息。支持实时系统和网络监控、触摸式显示器&#xff…

AI Toolkit软件安装教程(附软件下载地址)

软件简介: 软件【下载地址】获取方式见文末。注:推荐使用,更贴合此安装方法! AI Toolkit是一款卓越的人工智能软件,专为企业和个人提供一体化的解决方案,助力其工作流程高效运转。该软件套件融合了多种顶…

【公务员】图形推理技巧

位置规律 图形特征: 图形组成相同,优先考虑位置规律。 详细技巧: 样式规律 图形特征: 图形组成相似,优先考虑样式规律。 详细技巧: 形式技巧加法1、直接叠加2、☆规则运算:外轮廓与分割区域…

OpenCV笔记之图像处理中遮罩和掩模的关系

OpenCV笔记之图像处理中遮罩和掩模的关系 code review 文章目录 OpenCV笔记之图像处理中遮罩和掩模的关系1.遮罩详解遮罩的创建遮罩的应用遮罩的主要应用遮罩的类型如何创建遮罩遮罩在图像处理中的应用方式 2.遮罩和掩模的关系 1.遮罩详解 在图像处理中,遮罩&#…

Linux/Doctor

Enumeration nmap 已知目标开放了22,80,8089端口,扫描详细情况如下 可以看到对外开放了22,80,8089三个端口 TCP/80 SSTI 访问80端口,有一个infodoctors.htb的电子邮件,点击其他的也没有什么反应,猜测有可能需要域名访问 在/et…

进程(三)进程间的切换、环境变量

文章目录 进程间的切换Linux2.6内核进程调度队列一个CPU拥有一个runqueue优先级活跃进程过期队列active指针和expired指针 环境变量基本概念常见环境变量查看环境变量的方法测试PATH测试HOME和环境变量相关的命令通过代码如何获取环境变量通过系统调用获取环境变量 进程间的切换…

错误票据-蓝桥杯

思路&#xff1a; 其实只是排序一下&#xff0c;然后遍历&#xff0c;如果两个值差2&#xff0c;则输出两个值的平均数&#xff0c;如果两个数差值为0 &#xff0c;那么则这个值就是重复的值 代码&#xff1a; #include <iostream> #include<vector> #include&l…

第二篇【传奇开心果短博文系列】鸿蒙开发技术点案例示例:添加组件和事件处理

传奇开心果短博文系列 系列短博文目录鸿蒙开发技术点案例示例短博文系列 短博文目录一、前言二、添加组件和事件处理示例代码三、补全其余组件事件处理示例代码 系列短博文目录 鸿蒙开发技术点案例示例短博文系列 短博文目录 一、前言 有一必然会有二&#xff0c;有了第一个…

Java项目:基于SSM框架实现同城蔬菜配送管理系统(SSM+B/S架构+源码+数据库+毕业论文)

一、项目简介 本项目是一套ssm825基于SSM框架实现同城蔬菜配送管理系统&#xff0c;主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者。 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目附带全部源码可作为毕设使用。 项目都经过严格调试&…

小程序系列--12使用 npm 包

一、Vant Weapp 1. 什么是 Vant WeappVant Weapp 是有赞前端团队开源的一套小程序 UI 组件库&#xff0c;助力开发者快速搭建小程序应用。它所使用的是 MIT 开源许可协议&#xff0c;对商业使用比较友好。 官方文档地址 https://youzan.github.io/vant-weapp 2. 安装 Vant 组…

《WebKit 技术内幕》学习之六(1): CSS解释器和样式布局

《WebKit 技术内幕》之六&#xff08;1&#xff09;&#xff1a;CSS解释器和样式布局 CSS解释器和规则匹配处于DOM树建立之后&#xff0c;RenderObject树之前&#xff0c;CSS解释器解释后的结果会保存起来&#xff0c;然后RenderObject树基于该结果来进行规范匹配和布局计算。当…

Unity 组合模式(实例详解)

文章目录 示例1&#xff1a;Unity中的图形界面元素组合示例2&#xff1a;Unity中的游戏对象层级组合示例3&#xff1a;Unity中的场景图节点组合示例4&#xff1a;Unity中的场景管理组合示例5&#xff1a;Unity中的角色技能树组合 在Unity中&#xff0c;组合模式&#xff08;Com…

哈希的基本概念(开散列和闭散列)(附代码)

哈希 哈希概念哈希冲突哈希函数常见的哈希函数 哈希冲突的解决闭散列开散列 哈希概念 传统的查找函数&#xff0c;搜索的效率取决于比较的次数。而hash算法&#xff1a;在理想情况下&#xff0c;可以不经过任何比较&#xff0c;一次就能得到要搜索的结果。 存储结构&#xff1…

四、MyBatis 动态语句

本章概要 动态语句需求和简介if 和 where 标签set 标签trim 标签(了解)choose/when/otherwise 标签foreach 标签sql 片段 4.1 动态语句需求和简介 经常遇到很多按照很多查询条件进行查询的情况&#xff0c;比如智联招聘的职位搜索等。其中经常出现很多条件不取值的情况&#…