| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> JavaScript学习笔记 -> 正文阅读 |
|
[JavaScript知识库]JavaScript学习笔记 |
4.JavaScript语言4.1 JavaScript简介JavaScript主要是完成页面的数据验证,因此运行在客户端,需要浏览器来解析执行JavaScript代码。 JS是Netscape网景公司的产品,最早取名为LiveScript,为了吸引更多的java程序员,更名为JavaScript JS是弱类型,类型可变 弱类型Java是强类型,在定义变量的时候,类型已确定且不可变 特点:
4.2 JavaScript结合HTML4.2.1 第一种方式:script标签在head或body标签中,使用script标签来书写JavaScript代码
4.2.2 第二种方式:引入.js文件在head或body标签中,使用script标签引入js文件来书写JavaScript代码
注:一个script标签,引入js文件或建立js域只能二选一 4.3 变量4.3.1 变量类型数值类型: number 字符串类型: string 对象类型: object 布尔类型: boolean 函数类型: function 4.3.2 特殊值undefined 未定义(所有js变量未赋初始值的时候,默认为undefined) null 空值() NAN 非数值(全称Not A Number) 4.3.3 变量的定义var 变量名; var 变量名 = 初值; 4.4 运算4.4.1 关系运算除常规运算符以外,还有 ? == 字面匹配 ? === 全匹配
第一个为字面匹配,一个字符型的 i1 一个是数值型的 i2,字面匹配为true 第二个为全匹配,由于一个是字符型,一个是数值型,因此为false 4.4.2 逻辑运算注:所有类型均可当做布尔型,其中0、null、空串、undefined均为假 空串:var i = “” 不能有空格 与运算:&& ? 当表达式全为真,返回最后一个表达式的值 ? 当表达式中有一个为假,返回第一个为假的表达式的值
? 第一个返回:true ? 第二个返回:123 或运算: || ? 当表达式全为假时,返回最后一个表达式的值 ? 当表达式有一个为真,则返回第一个为真的表达式的值 取反运算: | 4.5 数组注:数组中的可以包含多种类型 注:可以通过下标完成对数组的扩容(随时可以对数组元素进行添加) ? 注:仅限于赋值操作 注:未赋值的数组元素为undefined var 数组名 = []; 空数组 var 数组名 = {}; 带初值的数组 4.6 函数注:必须调用才能执行! 注:含参函数无需指明参数类型 注:返回值无需设定,直接用return就可以 注:js中函数无法重载,会直接完成函数的覆盖 4.6.1 函数的定义方式第一种定义格式: ? function 函数名(形参){ ? 函数体 ? } 第二种定义格式: ? var 函数名 = function(形参){ ? 函数体 ? } 4.6.2 arguments 隐形参数(只在function函数内)在function函数中,无需定义,但是可以获取所有参数的变量。 js中的隐形参数,与java基础的可变长参数一样,操作类似数组 作用:在没有规定个数的函数中,实现对参数的处理。 ? 如:在不规定输入参数个数的情况下,求和并返回
在网页中,依次输出: 无参函数test()调用 3 1 smile true 4.7 自定义对象4.7.1 Object形式的对象定义格式: ? var 变量名 = new Object(); 实例化一个空对象 ? 变量名.属性名 = 属性值; 定义一个属性 ? 变量名.函数名 = function(参数){函数体} 定义一个方法(函数) 访问格式: ? 变量名.属性名 ? 变量名.方法(参数)
4.7.2 {}形式的对象注:不同属性或函数之间用逗号","隔开,最后一个不加 定义格式: ? var 变量名 = { ? 属性名:值, ? 函数名:function(形参){函数体} ? 属性名:值 ? }; 访问格式: ? 变量名.属性名 ? 变量名.函数名(形参) 4.8 事件定义:电脑输入设备与页面进行交互的响应 4.8.1 事件的注册事件注册(绑定):告诉浏览器,当事件响应后,要执行那些操作。 4.8.1.1 静态注册通过HTML标签的事件属性直接赋予事件响应后的代码 4.8.1.2动态注册先通过js代码得到标签的dom对象,然后在通过dom对象.事件名 = function(){}这种形式赋予事件响应后的代码 基本步骤:
4.8.2 onload事件浏览器页面解析完成(即,页面的文字、样式已经出现)之后,自动触发该事件。 4.8.2.1 onload事件静态注册注:一般在静态注册时,只写一个方法,增加可读性。 注:提前将所有需要调用的方法在head中写完,再直接调用该方法
4.8.2.2 onload事件动态注册固定格式: ? window.onload = function(形参){ ? 函数体 ? } 4.8.3 onclick事件鼠标单击响应 4.8.3.1 onclick事件静态注册
4.8.3.2 onclick事件动态注册注:小心方法重载,由于js无法重载,所以会直接覆盖之前的方法! ? 固定格式: ? window.onload = function(){ ? var 标签对象名 = document.getElementById = (“标签的id”) ? 标签对象名.onclick = function(形参){函数体} ? }
4.8.4 onblur(失去焦点)事件常用于输入框离开后验证其输入内容是否合法 4.8.4.1 onblur事件静态注册
4.8.4.2 onblur事件动态注册
4.8.5 onchange事件常用于下拉列表。 当列表内容改变时,触发事件 4.8.5.1 onchange事件静态注册
4.8.5.2 onchange事件动态注册
4.8.6 onsubmit事件常用于表单提交前,验证表单内容是否合法 先调用,再提交! 注:onsubmit = “return false” 可以阻止表单提交 4.8.6.1 onsubmit事件静态注册
4.8.6.2 onsubmit事件动态注册
4.8.7 事件的注册——总结静态注册:在<head></head>标签下的<script></script>中完成对需求的实现,直接在需求对应标签上进行方法的调用。 动态注册:在<head></head>标签下的<script></script>中写window.onload,在这个方法下面获取目标对象,并完成对该对象的个性化方法。 4.9 DOM模型DOM全称是Document Object Module,指的是把文档中的标签、属性、文本转换成对象进行处理 4.9.1 Document对象特点:
4.9.2 Document中对象查询的方法4.9.2.1根据id查找标签注:若存在同名ID,只会返回第一个 调用格式:document.getElementById(elementId)
4.9.2.2根据name查找标签返回带有指定名称的对象集合 调用格式:document.getElementsByName(elementName)
4.9.2.3根据标签名查找标签注:范围太大,不好用。 调用格式:document.getElements ByTagName(tagname) 4.9.3 Document中对象查询的方法总结使用优先级:id > name > tag 以上三个方法,必须在页面加载完成之后执行,才能查询到标签对象。 4.10 正则表达式(RegExp)正则表达式是描述字符模式的对象,可以用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具。 语法: ? var patt = new RegExp(patten,modufiers); ? 或 ? var = patt = /patten/modifiers; 其中:pattern 描述了表达式的模式 ? modifiers 用于指定全局匹配、区分大小写的匹配和多行匹配 4.11 常见的验证提示效果实现方式:
实现方式:
? innerHTML 指的是从对象的起始位置到终止位置的全部内容,包括Html标签。 ? 以上两种方法在实际网站中使用失去焦点事件触发 |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/26 16:26:24- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |