week 5 in bluemsun

初探JavaScript

目录

初探JavaScript

JavaScript概述

JS历史

JS作用

JS用法

JS语法规范

标识符命名

注释

变量

数据类型

运算符

条件语句

循环语句

数组

对象

函数

作用域

预编译


JavaScript概述

JavaScript(以下简称JS)是一种轻量级的解释型脚本语言,用于控制网页的行为,可直接插入HTML的编程代码

JS历史

JS的官方名称为ECMA-262,由 Brendan Eich 发明。于 1995 年出现在 Netscape 中(该浏览器已停止更新),并于 1997 年被 ECMA(一个标准协会)采纳。

年份名称描述
1997ECMAScript 1第一个版本
1998ECMAScript 2版本变更
1999ECMAScript 3添加正则表达式
添加 try/catch
ECMAScript 4没有发布
2009ECMAScript 5添加 "strict mode",严格模式
添加 JSON 支持
2011ECMAScript 5.1版本变更
2015ECMAScript 6添加类和模块
2016ECMAScript 7增加指数运算符 (**)
增加 Array.prototype.includes

注:ECMAScript 6 也称为 ECMAScript 2015。ECMAScript 7 也称为 ECMAScript 2016。

JS作用

直接写入HTML输入流

对事件的反应

改变HTML内容

改变HTML图像

改变HTML样式

验证输入

JS用法

可使用<script></script>在HTML文档中插入JS脚本,与用于插入css的<style></style>标签不同的是,<script></script>既可放在<head></head>标签里,也可放在<body></body>标签里

JS语法规范

  1. 标识符命名

    1. 第一字符必须是为字母、下划线( _ )或者美元符号( $ )
    2. 其他字符可以是字母、下划线、美元符号或数字,最好不要包含其他字符
    3.  不能把关键字或者保留字作为标识符
    4. 附:关键字列表
      abstractelseinstanceofsuper
      booleanenumintswitch
      breakexportinterfacesynchronized
      byteextendsletthis
      casefalselongthrow
      catchfinalnativethrows
      charfinallynewtransient
      classfloatnulltrue
      constforpackagetry
      continuefunctionprivatetypeof
      debuggergotoprotectedvar
      defaultifpublicvoid
      deleteimplementsreturnvolatile
      doimportshortwhile
      doubleinstaticwith
  2. 注释

    1. 行内注释"//"
    2. 段落注释“/*........*/”
  3. 变量

    1. 变量是用于储存信息的“容器”,可用于存放值(包括数值,字符,字符串等)和表达式
    2. 变量命名规范
      1. 变量多数情况下以字母开头
      2. 变量也能以 $ 和 _ 符号开头(不推荐)
      3. 变量名称对大小写敏感
    3. 使用“var”关键字声明变量,声明的变量初始值为 undefined 。可在声明时对变量进行赋值,也可在之后对其赋值(在 2015 年以前,我们使用 var 关键字来声明 JavaScript 变量。在 2015 后的 JavaScript 版本 (ES6) 允许我们使用 const 关键字来定义一个常量,使用 let 关键字定义的限定范围内作用域的变量)
    4. 若对一个变量进行重新声明,原变量的值不会丢失
    5. 可在一行语句中声明多个变量,各变量之间用逗号分隔。也可横跨多行,仍用逗号分隔
  4. 数据类型

    1. 值类型(基本类型):
      1. 字符串(String):可以为引号内的任意文本,可以为单引号或双引号。内容中的引号可以用转义字符 /' 或 /'' 来表示
      2. 数字(Number):只有一种数据类型,可以带小数点也可以不带,还可以用科学计数法表示。精度类似C语言中的 double 
      3. 布尔(Boolean):只有 ture 和 false 两种取值
      4. 对空(Null):只有一个值,表示一个空对象指针, typeof 操作符检测 null 值时返回 object 
      5. 未定义(Undefined):只有一个值,在使用 var 声明变量但未对其赋初值时,这个变量就是undefined。可通过将变量的值设为 null 来清空变量,使变量成为 Undefined 类型
      6. Symbol(没看懂到底是用来干啥的)
    2. 引用数据类型(对象类型)
      1. 对象(Object):由花括号分隔,在括号内部,以 属性名: 属性值 来定义对象的属性,属性间由逗号分隔,可夸多行声明。对对象的属性寻址时可用 对象名.属性名 或 对象名["属性名"]
      2. 数组(Array):由中括号分隔,在括号内部,各个元素间以逗号分隔
      3. 函数(Function):前面使用了关键词 function ,写变量名后用花括号分隔的代码块,用于实现某一特定功能,可被多次引用。
      4. 正则(RegExp):存储正则表达式。正则表达式是由一个字符序列形成的搜索模式,可用于所有文本搜索和文本替换的操作。
      5. 日期(Date)
    3. JS中拥有动态类型,即同一个变量可能拥有不同的数据类型。变量的数据类型可以使用 typeof 操作符来查看
    4. 可以用 new 关键字来声明变量类型
  5. 运算符

    1. 算数运算符
      +加法
      -减法
      *乘法
      /除法
      %取模(余数)
      ++递加
      --递减
    2. 赋值运算符
      运算符例子等同于
      =x = yx = y
      +=x += yx = x + y
      -=x -= yx = x - y
      *=x *= yx = x * y
      /=x /= yx = x / y
      %=x %= yx = x % y
    3. 字符串运算符 + 
      1. 用于连接文本或字符串变量
      2. 若被用于连接字符串和数字,则数字自动转换为字符串,如: '5' + 5 = '55'
    4. 比较运算符
      ==等于
      ===等值等型
      !=不相等
      !==不等值或不等型
      >大于
      <小于
      >=大于或等于
      <=小于或等于
      ? :三元运算符
    5. 逻辑运算符
      &&逻辑与
      ||逻辑或
      !逻辑非
    6. 类型运算符
      typeof返回变量的类型。
      instanceof返回 true,如果对象是对象类型的实例。
    7. 位运算符

      &
      |
      ~
      ^异或
      <<零填充左位移
      >>有符号右位移
      >>>零填充右位移
  6. 条件语句

    1. if 语句:只有当指定条件为 true 时,使用该语句来执行代码
    2. if...else 语句:当条件为 true 时执行代码,当条件为 false 时执行其他代码
    3. if...else if....else 语句使用该语句来选择多个代码块之一来执行
    4. switch 语句:使用该语句来选择多个代码块之一来执行
  7. 循环语句

    1. for 语句:循环代码块一定的次数
    2. for ( A in B )语句:遍历 in 后数组的元素或对象的属性,A的变化为0~元素总数
    3. for ( A of B )语句:遍历 in 后可迭代对象的值(可迭代的数据结构例如数组、字符串、映射、节点列表等),A的变化为具体的对象的值
    4. while:当指定的条件为 true 时循环指定的代码块
    5. do/while:同样当指定的条件为 true 时循环指定的代码块
    6. break 语句用于结束循环
    7. continue 语句用于跳出本次循环
  8. 数组

    1. 数组是一种特殊的对象,对数组使用 typeof 运算符会返回 "object" 。
    2. 所以,数组中的元素的数据类型可以不同。
    3. 但是,JavaScript 数组最好以数组来描述,因为数字元素可以用下标标号进行访问,而对象属性需写完整的属性名。
    4. 创建数组:语法 var array-name = [item1, item2, ...]; 最后一个元素后不可加逗号,可跨行声明
    5. 访问数字元素:通过数组下标引用相对应的数组元素,通过数组名称访问完整的数组
    6. length 属性表示数组的长度
    7. 遍历数组元素
      1. for循环
      2. array.forEach()函数
    8. 添加数组元素(添加至数组末尾)
      1. array.push(新增元素)
      2. array[array.length] = "新增元素"
  9. 对象

    1. 对象具有属性和方法,是对现实生活中事物的抽象
    2. 定义对象:用花括号分隔对象的属性,对象的每个属性都由 键:值 的形式定义,每个方法都由 键:function(){...} 的形式定义,可跨多行定义
    3. 访问对象属性或方法
      1. 对象名.键
      2. 对象名["键"]
  10. 函数

    1. 定义函数:用花括号分隔执行某一特定功能的代码块,最前面使用关键词 function,在函数名后加 () ,括号内为传入函数的参数,没有可以不写
    2. 使用 return 语句,可以使函数停止执行,并返回指定的值
  11. 作用域

    1. 在 HTML 中,全局作用域是 window。所有全局变量均属于 window 对象
    2. 全局变量:在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它
    3. 局部变量:在函数体内部声明的变量和函数的参数为局部变量,仅可在函数内部使用,只要函数运行完毕,本地变量就会被删除
    4. 变量的生存期:从被声明开始,局部变量会在函数运行以后被删除,全局变量会在页面关闭后被删除。
    5. 如果您为尚未声明的变量赋值,此变量会自动成为全局变量,但在“严格模式”中不会自动创建全局变量
  12. 预编译

    1. 预编译前
      1. 创建 window 对象
      2. 加载脚本文件
      3. 分析语法是否合法
    2. 发生在脚本代码块script执行前
      1. 查找变量声明,以作为 window 的属性,赋予值 undefined
      2. 查找函数声明,以作为 window 的方法,赋予函数体
    3. 发生在函数执行前
      1. 创建活动对象
      2. 查找形参和局部变量声明,赋予值 undefined
      3. 将实参的值赋给形参
      4. 查找函数声明,赋予函数体
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《一周学会使用Perl编写CGI程序》这本书是一本针对初学者设计的指南,它将帮助读者理解并学会使用Perl编写CGI程序。这本书的整体结构紧凑,通过简单易懂的语言和实用的示例来讲解Perl语言和CGI编程。 在第一周的学习中,读者将了解到Perl语言的基础知识。他们将学习如何安装Perl解释器和编辑器,了解Perl的语法规则和基本数据类型。通过这样的学习,读者将能够编写简单的Perl脚本,并逐步了解如何构建网页和处理用户输入。 第二周的学习将重点介绍CGI编程的概念和原理,以及如何将Perl与CGI结合起来使用。通过实际的实例和案例,读者将学习如何编写CGI脚本,包括如何处理表单数据、生成动态内容和与数据库交互等等。 在接下来的几天里,读者将学习如何创建和设计动态网页。他们将学习如何使用Perl编写脚本,将数据从数据库中提取并在网页中展示。同时,他们还将学习如何使用Perl的各种库和模块来简化编程工作,并提升网页的功能和交互性。 最终,读者将能够独立开发CGI程序,并将其部署到Web服务器上。他们将具备处理用户输入、生成动态内容和与数据库交互的能力。这本书的学习过程将帮助读者建立起坚实的Perl和CGI编程基础,为他们未来更深入地探索Web开发和应用提供了良好的基础。 总而言之,《一周学会使用Perl编写CGI程序》是一本循序渐进、易于理解的教程,它将帮助读者快速掌握Perl和CGI编程的基本知识和技能。无论是初学者还是有一定编程基础的人都可以通过这本书来快速入门和提升自己的编程水平。 ### 回答2: 学习在一周内用Perl进行CGI编程的方法很多,但是要真正掌握CGI编程需要更多的时间和努力。以下是一些可以帮助你快速入门的步骤: 1. 学习Perl语言基础:在开始学习CGI编程之前,你需要对Perl语言有一定的了解。了解变量、数组、条件语句和循环等基本概念,并尝试编写一些简单的Perl脚本。 2. 理解CGI基本原理:理解CGI的基本工作原理对于学习CGI编程非常重要。了解HTTP请求和响应的过程,以及CGI程序如何与Web服务器进行通信。 3. 学习CGI编程概念:了解CGI程序的结构、CGI环境变量和CGI参数的使用方法。熟悉如何获取和处理表单数据、文件上传以及Cookie等常见的CGI编程任务。 4. 编写简单的CGI程序:从一个简单的例子开始,如打印"Hello World"到网页上。通过编写简单的CGI程序,你可以熟悉Perl如何执行CGI任务,并了解如何与浏览器进行交互。 5. 学习HTML和CSS:HTML和CSS是网页设计的基础,对于CGI编程也是必须掌握的。了解HTML的基本标签和属性,以及如何使用CSS样式和布局。 6. 掌握数据库连接:学习如何使用Perl连接和操作数据库是CGI编程的重要一步。了解如何使用Perl模块来连接MySQL或其他数据库,并执行查询、插入和更新操作。 7. 实践和调试:通过实践编写更复杂的CGI程序,并进行调试。尝试处理用户输入、验证表单数据等常见的任务,同时学习如何处理错误和异常情况。 总之,学习CGI编程需要时间和耐心。一周的时间可能不足以掌握所有的细节,但通过有序的学习和实践,你可以在短时间内入门并开始编写简单的CGI程序。 ### 回答3: 想要在一周内自学使用Perl编程进行CGI编程,可以按照以下步骤进行: 第一步是了解CGI(通用网关接口)的基本概念和原理。CGI是一种标准化的方式,用于在Web服务器和应用程序之间传输数据。学习CGI的基础知识,包括HTTP请求、表单数据处理等。 第二步是学习Perl编程语言的基础知识。Perl是一种强大的脚本语言,广泛用于Web开发。学习Perl的基本语法、变量、操作符、函数等。 第三步是学习如何使用Perl编写CGI程序。了解CGI程序的结构和工作原理,学习如何接收和处理HTTP请求,以及如何生成动态的网页内容。还需学习如何处理表单数据,进行输入验证,以及如何与数据库交互等。 第四步是实践编写简单的CGI程序。选择一个简单的项目,如创建一个简单的表单提交页面或网页计算器。通过实践,加深对Perl和CGI的理解,并提升编程技巧。 第五步是继续深入学习和探索。了解更高级的Perl和CGI技术,如正则表达式、文件处理、会话管理等。还可以学习常见的Perl模块,如CGI.pm和DBI.pm,以提高开发效率和功能性。 最后,持续实践和学习。一周的时间可能不足以精通CGI编程,但通过持续的实践和学习,可以逐渐提升自己的编程能力,并不断掌握更多的技术和知识。 总之,想要在一周内自学使用Perl编程进行CGI编程,需要有基础的编程知识和学习能力,并将实践与理论相结合,不断提升自己的技能水平。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值