| |
|
开发:
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-基本语法 |
JavaScriptJavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web页面的脚本语言而出名,但是它也被用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式、声明式、函数式编程范式。 JavaScript在1995年由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。 JavaScript的标准是ECMAScript 。截至 2012 年,所有浏览器都完整的支持ECMAScript 5.1,旧版本的浏览器至少支持ECMAScript 3 标准。2015年6月17日,ECMA国际组织发布了ECMAScript的第六版,该版本正式名称为 ECMAScript 2015,但通常被称为ECMAScript 6 或者ES2015。 JavaScript是一种弱类型语言,具有以下几种特点:
使用JavaScript可以通过以下两种方式:
把脚本置于 <body> 元素的底部,可改善显示速度,因为脚本编译会拖慢显示。 外部脚本很实用,如果相同的脚本被用于许多不同的网页。 JavaScript 文件的文件扩展名是 .js。 如需使用外部脚本,请在<script> 标签的 src (source) 属性中设置脚本的名称:
严格检查模式 前提:IDEA需要设置支持ES6语法 变量JavaScript的变量类型可以大致分为以下几种:
JavaScript变量中的特殊值:
我们可以通过JavaScript提供的typeof()函数(返回变量值的类型)来确认变量的数值类型! 运算关系运算 关系运算需要注意的是在JavaScript中,等号和双等号的含义有所不同,等于()相当于做数值字面的比较,全等于(=)表示除了数值字面来说,还会比较两个变量的数据类型! 逻辑运算 与运算:&&
或运算:||
**注意:**与运算和或运算有短路(指的是&&运算或||运算有结果之后,后边的表达式不再执行) 取反运算:! **注意:**在JavaScript中,所有的变量,都可以作为一个boolean类型的变量去使用,例如:0、null、undefined、“”(空串)都认为是false! 数组代码实例:
下面的例子也会创建数组,并为其赋值:
以上两个例子效果完全一样。无需使用 new Array()。 出于简洁、可读性和执行速度的考虑,请使用第一种方法(数组文本方法)。 值得一提的是,JavaScript语言中的数组,规定了只要我们使用下标方式给数组元素赋值,而下标超过了数组长度,则会对数组进行自动扩容!
我们也可以通过for循环来输出数组内的元素
注意:在js中,变量并不能用int关键字来描述,需要使用var关键字 函数JavaScript 函数是被设计为执行特定任务的代码块,在 JavaScript 函数中声明的变量,会成为函数的局部变量。 局部变量只能在函数内访问。 JavaScript 函数会在某代码调用它时被执行:
JavaScript 函数通过 function 关键词进行定义,其后是函数名和括号 ()。 函数名可包含字母、数字、下划线和美元符号(规则与变量名相同)。 圆括号可包括由逗号分隔的参数:
函数参数(Function parameters)是在函数定义中所列的名称。 函数参数(Function arguments)是当调用函数时由函数接收的真实的值。 在函数中,参数是局部变量。 在其他编程语言中,函数近似程序(Procedure)或子程序(Subroutine)。 函数调用 函数中的代码将在其他代码调用该函数时执行:
函数返回 当 JavaScript 到达 return 语句,函数将停止执行。 如果函数被某条语句调用,JavaScript 将在调用语句之后“返回”执行代码。 函数通常会计算出返回值。这个返回值会返回给调用者:
x 的结果将是:56 注意:不使用 () 访问函数将返回函数声明而不是函数结果:
返回的结果为:function accumulate(num1, num2) { return num1 + num2; } 注意:Java中函数允许被重载,但是在JavaScript中不允许函数的重载!重载函数会覆盖掉原来的函数定义!
返回的结果为:无参函数 隐形参数(arguments) 在function函数中不需要定义,但是却可以直接用来获取所有参数的变量,我们管它叫做隐形函数,类似于Java中的可变长参数。
即使我们在arr()函数中定义一个参数a,最后将a返回,执行该函数也能正常返回a=1! JS中的自定义对象Object形式的自定义对象对象的定义 var 变量名 = new Object();
变量名.属性名 = 值
变量名.函数名 = function(){}
对象的访问 变量名.属性/函数名();
花括号形式的自定义对象var 变量名 = { ? 属性名:值. ? 属性名:值, ? 函数名:function() {} };
事件什么是事件?事件是电脑输入设备与页面进行交互的响应,我们称之为事件! 常用的事件有以下几类:
事件的注册 什么是事件的注册(事件的绑定),简单来说就是告诉浏览器,事件执行之后需要执行哪些代码,这些就叫做事件注册!事件的注册又分为静态注册和动态注册两种! **静态注册:**通过html标签的事件属性直接赋予事件响应后的代码,这种方式就叫做静态注册 **动态注册:**先通过js代码得到标签的dom对象,然后再通过dom对象.事件名=function(){}这种形式赋予事件响应后的代码,叫做动态注册 onload加载完毕事件onload事件是指浏览器解析页面完毕之后自动触发的事件!
onclick单击响应事件以下代码实例中,展示了onclick事件的使用,其中,document是JavaScript语言中提供的一个对象(文档),通过获取id属性的元素来获取标签对象,Date函数是一个获取当前主机所显示时间的函数!
onblur失去焦点事件
onchange内容发生改变事件
onsubmit表单提交事件
DOM模型DOM是JavaScript操作网页的接口,全称叫文档对象模型(Document Object Model)。它的作用是将网页转化为一个Javascript对象,从而用JavaScript脚本进行各种操作(比如增删元素等)。 DOM的最小组成单位就是节点(node)。DOM树就是由不同类型的节点组成。每个节点可以看成是DOM树上的叶子。
Document对象的理解:
模拟对象化 假设现有一段HTML代码如下:
对上述代码进行对象化,也就是将每个部分都看做为一个对象,类似于Java中的Class类的属性~
Document对象每个载入浏览器的 HTML 文档都会成为 Document 对象。 Document 对象使我们可以从脚本中对 HTML 页面中的所有元素进行访问。 **提示:**Document 对象是 Window 对象的一部分,可通过 window.document 属性对其进行访问。 Document对象集合
Document对象属性
Document对象方法
Document 对象描述 很多属性和方法都是 HTMLCollection 对象(实际上是可以用数组或名称索引的只读数组),其中保存了对锚、表单、链接以及其他可脚本元素的引用。 这些集合属性都源自于 0 级 DOM。它们已经被 Document.getElementsByTagName() 所取代,但是仍然常常使用,因为他们很方便。 **注意:**在 1 级 DOM 中,HTMLDocument 定义了一个名为 getElementById() 的非常有用的方法。在 2 级 DOM 中,该方法已经被转移到了 Document 接口,它现在由 HTMLDocument 继承而不是由它定义了。 getElementByName()实现复选框的全选、反选、全不选以下代码实例也可以使用getElementByTagName()方法来实现,只不过,getElementByTagName()需要选中的是input标签,getElementByName()选中的是input标签中的name属性!同样,也可以使用getElementById()方法来实现,该方法需要选中input标签中的id属性。 document属性提供的三个查询方法具有使用的优先顺序,一般来说,标签如果有id属性,就优先使用getElementById()方法,然后再考虑getElementByName()方法,最后再考虑getElementByTagName()方法,优先顺序按照查询范围的大小进行排序! 且以上三种方法,一定要在页面加载完成之后执行,才能查询到标签对象!因为HTML代码是从上到下执行的,所以一般在写代码的时候,会把script标签放在最下面!
正则表达式正则表达式是构成**搜索模式(search pattern)**的字符序列。 当您搜索文本中的数据时,您可使用搜索模式来描述您搜索的内容。 正则表达式可以是单字符,或者更复杂的模式。 正则表达式可用于执行所有类型的文本搜索和文本替换操作。 JavaScript中的正则表达式语法:
代码实例:
/\w/i 是一个正则表达式,其中,\w 是模式(pattern)(在搜索中使用),i 是修饰符(把搜索修改为大小写不敏感)。 正则表达式修饰符 修饰符可用于大小写不敏感的更全局的搜素:
正则表达式模式 括号用于查找一定范围的字符串:
元字符 元字符(Metacharacter)是拥有特殊含义的字符:
量词 量词表示是否包含指定条件的字符:
注意:假设此时有一个字符串var=“abcaaaac”,而正则表达式var patt = /a{2,4}/,虽然要求最多只能由4个a,但是在遍历的时候,字符串遍历到第二个a时,已经满足了最少2个a的条件,就会立刻返回,所以会返回true,如果需要从头到尾遍历字符串,则需要以下表达式:
验证用户名是否合法要求:点击按钮之后,可以判断用户名输入是否合法,合法返回通过,不合法返回不通过,用户名必须包含字母、数字或下划线,并且长度在5-12之间,匹配规则需要使用正则表达式!
两种常见的验证提示效果常见的验证提示效果分为以下两种,一是验证之后显示“用户名不合法”的文本,另一种是进行验证之后显示“√”或者“x”的小图标,但无论那种,我们都需要包含提示效果内容的标签,并且需要对标签内容进行修改! 第一种:文本提示
第二种:图片提示
|
|
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/29 20:26:19- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |