首页 > 编程语言 >JavaScript知识汇总

JavaScript知识汇总

时间:2023-02-19 21:56:17浏览次数:57  
标签:语句 知识 变量 作用域 JavaScript 汇总 关键字 声明

1 JavaScript功能

  • 直接写入 HTML 输出流(在 HTML 输出中使用 document.write,如在文档加载后使用该方法会覆盖整个文档)
  • 对事件进行响应(如鼠标事件、键盘事件等)
  • 改变HTML内容(innerHtml)
  • 改变HTML图像
  • 改变HTML样式
  • 验证输入

2 JavaScript用法

  • 在HTML中插入<script>标签,JavaScript脚本代码位于且必须位于<script>与</script>标签之间
    • 可以直接在<script>与</script>标签之间编写JavaScript脚本代码
    • 也可以将JavaScript脚本代码集中编写到类型为.js的文件中,通过<script src = "">标签的src引入(.js文件中不能包含 <script> 标签)
  • <script>与</script>标签,可以放在HTML的<head>或者<body>部分,或者同时存在于两个部分中
  • 通常把函数放入 <head> 部分中,或者放在页面底部,且集中放到同一位置,避免干扰HTML页面其他内容

3 JavaScript输出

  JavaScript 没有任何打印或者输出的函数,但可通过以下4种方式来输出数据:

  • 使用 window.alert() 弹出警告框
  • 使用 document.write() 方法将内容写到 HTML 文档中
  • 使用 innerHTML 写入到 HTML 元素
  • 使用 console.log() 写入到浏览器的控制台

4 JavaScript语法

4.1 JavaScript字面量与变量

  在指令式语言中:

  • 变量通常是可变的,字面量是一个恒定的值
  • 变量是一个名称,字面量是一个

4.1.1 JavaScript 字面量

  在编程语言中,一般固定值称为字面量,JavaScript的字面量有:

  • 数字(Number)字面量 可以是整数或者是小数,或者是科学计数(e)
  • 字符串(String)字面量 可以使用单引号或双引号
  • 表达式字面量 用于计算
  • 数组(Array)字面量 定义一个数组
  • 对象(Object)字面量 定义一个对象
  • 函数(Function)字面量 定义一个函数

4.1.2 JavaScript 变量

  • 变量用于存储数据值,也可以把变量看做存储数据或信息的容器
  • JavaScript 使用关键字 var 来声明(或创建或定义)变量
    • 变量声明后未赋值,则为空(Javascript语言中空值为undefined)
    •  变量声明后使用等号(=)来为变量赋值
    • 变量既可以先声明不赋值,也可声明的同时进行赋值
    • 重新声明同名变量(重置变量)不赋值,则之前的变量的值将保持不变,如赋值,则会改变为新值
    • Javascript语言中一条语句中可声明很多变量。该语句以 var 开头,并使用逗号分隔变量即可
    • var关键字声明局部变量,作用域仅支持函数,对块级({})、循环内声明变量都会当作全局变量(可详见与ES6的let关键字区别)
    • 在代码开始处集中声明需要的变量,是编程的好习惯
  • 变量的命名规则:
    • 变量必须以字母开头
    • 变量也能以 $ 和 _ 符号开头(不推荐)
    • 变量名称对大小写敏感(y 和 Y 是不同的变量)
  • 变量的作用域
    • 在 ES6 之前,JavaScript 只有两种作用域: 全局变量 与 函数内的局部变量
    •  全局变量
      • 在函数外声明的变量作用域是全局的
      • 在 JavaScript 程序的任何地方都可以访问
      • 在循环体内外,使用 var 关键字声明的变量都是全局变量
    • 函数内的局部变量
      • 在函数内声明的变量作用域是局部的(函数内)
      • 函数内使用 var 声明的变量只能在函数内访问,如果不使用 var 则是全局变量
    • ES6及以后,var、let声明变量区别
      • 使用 var 关键字声明的变量不具备块级作用域的特性,在 {} 外依然能访问到变量。
      • ES6 之前无块级作用域概念。ES6 增加 let 关键字来实现块级作用域,其声明的变量只在 let 命令所在的代码块 {} 内能访问,{} 外不能访问

      • 在循环体内外,使用 var 关键字声明的变量都是全局变量。而使用 let 关键字声明的变量作用域只在循环体内,循环体外的变量不受影响
      • 使用var关键字声明的全局作用域变量属于window对象且在任何地方都可修改。使用let关键字声明的全局作用域变量不属于window对象

      • 在相同的作用域或块级作用域中,不能使用let关键字来重置var关键字声明的变量

      • 在相同的作用域或块级作用域中,不能使用let关键字来重置let关键字声明的变量

      • let关键字在不同作用域,或不用块级作用域中是可以重新声明赋值的

      • 在相同的作用域或块级作用域中,不能使用const关键字来重置var和let关键字声明的变量

      • 在相同的作用域或块级作用域中,不能使用const关键字来重置const关键字声明的变量

      • const 关键字在不同作用域,或不同块级作用域中是可以重新声明赋值的

      • var关键字定义的变量可以先使用后声明(因自动变量提升)

      • let关键字定义的变量需要先声明再使用

      • const关键字定义的常量,声明时必须进行初始化,且初始化后不可再修改

4.2 JavaScript 操作符

  • JavaScript使用 算术运算符 来计算值
  • JavaScript使用赋值运算符给变量赋值
  • JavaScript语言有多种类型的运算符:
    • 赋值,算术和位运算符
    • 条件,比较及逻辑运算符

4.3 JavaScript 语句

  在 HTML 中,JavaScript 语句用于向浏览器发出命令,告诉浏览器该做什么

4.3.1 分号(;)

  • JavaScript 语句用分号(;)分隔,使用分号可以在一行中编写多条语句
  • 通常可在每条可执行的语句结尾添加分号
  • 在 JavaScript 中,用分号来结束语句是可选的(也有不带有分号的案例)

4.3.2 JavaScript 代码

  • JavaScript 代码是 JavaScript 语句的序列。
  • 浏览器按照编写顺序依次执行每条语句。

4.3.3 JavaScript 代码块

  JavaScript 代码可以分批地组合起来形成代码块:

  • 代码块以左花括号({)开始,以右花括号(})结束
  • 代码块的作用是一并地执行语句序列

4.3.4 JavaScript 语句标识符

  • JavaScript 语句通常以一个 语句标识符 为开始,并执行该语句
  • 语句标识符是保留关键字不能作为变量名使用
  • JavaScript 语句标识符 (关键字) :
    • break    用于跳出循环
    • catch    语句块,在 try 语句块执行出错时执行 catch 语句块
    • continue    跳过循环中的一个迭代
    • do ... while    执行一个语句块,在条件语句为 true 时继续执行该语句块
    • for    在条件语句为 true 时,可以将代码块执行指定的次数
    • for ... in    用于遍历数组或者对象的属性(对数组或者对象的属性进行循环操作)
    • function    定义一个函数
    • if ... else    用于基于不同的条件来执行不同的动作
    • return    退出函数
    • switch    用于基于不同的条件来执行不同的动作
    • throw    抛出(生成)错误
    • try    实现错误处理,与 catch 一同使用
    • var    声明一个变量
    • while    当条件语句为 true 时,执行语句块

4.3.5 空格

  • JavaScript 会忽略多余的空格
  • 可以向脚本添加空格,来提高其可读性

4.3.6 对代码行进行折行

   可以在文本字符串中使用反斜杠(\)对代码行进行换行 

4.4 JavaScript 关键字

  • JavaScript 关键字用于标识要执行的操作 
  • 和其他任何编程语言一样,JavaScript 保留了一些关键字为自己所用,如var 关键字告诉浏览器创建一个新的变量 

4.5 JavaScript 注释

  不是所有的 JavaScript 语句都会当作是"命令"执行,注释的语句或字符则会被浏览器忽略:
  • 单行注释(双斜杠 // ),//后的同一行内容将会被浏览器忽略
  • 多行注释(/**/),/*在之间的内容(含多行)将会被浏览器忽略*/

4.6 JavaScript 字母大小写敏感

  JavaScript 对大小写是敏感的。如函数 getElementById 与 getElementbyID 是不同的,变量 myVariable 与 MyVariable 也是不同的

4.7 JavaScript 字符集

  JavaScript 使用 Unicode 字符集

 

标签:语句,知识,变量,作用域,JavaScript,汇总,关键字,声明
From: https://www.cnblogs.com/cqycb720930/p/17110721.html

相关文章

  • HTML入门知识点
     一:HTML元素 <html><body><h1>我的第一个标题</h1><p>我的第一个段落。</p><ahref="http://www.w3school.com.cn">Thisisalin......
  • pwntools基础知识
    pwntools基础知识连接:本地process()里面放文件名例如process('./test');远程remote(,),remote接受url并指定端口,remote('url',端口)。数据处理:主要对整数进行打包,就是......
  • 【JavaScript】17_debug,立即执行函数 与 严格模式
    14、debug<script>//debugger//在代码中打了一个断点console.log(a)//2vara=1console.log(a)//1fu......
  • 【JavaScript】18_面向对象,类与属性
    1、面向对象面向对象编程(OOP)程序是干嘛的?程序就是对现实世界的抽象(照片就是对人的抽象)对象是干嘛的?一个事物抽象到程序中后就变成了对象在程序的世界中,一切皆对象面向对象......
  • TS进阶知识点
    1.枚举enum1.1、数组枚举:使用枚举我们可以定义一些带名字的常量,使用枚举可以清晰地表达意图或创建一组有区别的用例,程序中能灵活的使用枚举(enum),会让程序有更好的可读......
  • 基于OpenMV的图像处理基础知识及例程使用方法
                ......
  • Leetcode题1两数之和 JavaScript语言
    1.两数之和方案一,暴力双循环读完题目,马上能想到的方案就是双循环,挨个排查,写出来也很快:vartwoSum=function(nums,target){constlen=nums.length;for......
  • JavaScript中深拷贝和浅拷贝有什么区别?如何实现深拷贝?
    前言大家好,我是CoderBin,本次讲讲深拷贝和浅拷贝有什么区别?以及如何实现深拷贝?。希望对大家有所帮助,谢谢!如果文中有不对、疑惑的地方,欢迎在评论区留言指正......
  • 基础知识-网络基础
    什么是网络我们现在生活中现在是不可缺少网络的,想象一下,没有了微信,没有了社交软件,没有了电话,没有了电脑,我们的社会也不会飞速发展到现在,网络在计算机这个专业,起到很大的作......
  • LabVIEW|知识点:XML文件格式
      XML(eXtensibleMarkupLanguage)是一种目前广泛使用的数据传输和存储的格式,其本质上是一种文本文件,可以使用任何一个文本编辑工具打开和修改。类似于HTML,XML被设计为具......