本文作为个人学习笔记,一直也没有重视javascript的系统学习(javascript是最容易被人忽视的语言),我都是要用的时候百度一下查找下资料开始用,但没有系统的,学习,和整理过javascript,有时候直接用百度来的Javascript代码改改就开始用了(拿来主义),做了3年半技术,现在构建自己的技能树发现自己这一块是一个空缺,所以就准备好好复习下javascript,便有了这系列的笔记。计划主要从两个大方向开始复习,一是:javascript核心部分,二:客户端javascript。

概述:

javascript是面向Web的编程语言,大部分网站都在使用javascript,并且Web浏览器,桌面系统,游戏机,平板电脑,智能手机。都包含了javascript解析器,这使得javascript称的上是最广泛的编程语言。“javascript”这个名字经常被人误解,除了语法看起来和java类似之外,javascript和java是完全不同的开发语言,javascript早已经超出了“脚本语言”本身范畴了,成为一种健壮性,高效性和通用为一身的编程语言。

干货开始:

1.词法结构

编程语言的语法结构是一套基础规则,用来描述如何使用这门编程语言来编程,作为语法的基础,他规定了变量名是什么样的,怎么写注释,以及程序语句怎么分隔等规则。

1.1字符集

javascript程序是用Unicode字符集编写的,Unicode是Ascll和Latin-1的超集,并且支持地球上几乎所有的语言,ECMAScript 3要求javaScript的实现必须支持Unucide2,1及h后续版本,EcMAScript 5则要求支持Unicode 3及后续版本

1.1.1 区分大小写

   javascript是区分大小写的语言,也就是说关键字,变量,函数名称和所有的标识符都必须区分采用一致的大小写形式,比如,关键词“while”必须写成“while”,就不能写成“While”或者“WHILE”,同样,“online”,"Online","OnLine","ONLINE"这是4个不同的变量名。

1.1.2 空格,换行符合格式控制符

javascript会忽略掉程序中的标识(token)之间的空格。多少情况下,javascript同样会忽略换行符,由于可以在代码中随意的使用空格和换行,因此可以采用整齐,一致的缩进来形成统一的编程风格,提高代码可读性。(小说嘀咕:编程规范很重要)

1.2注释

Javascript支持两种格式的注释,在“//”之后的文本都会被javascrip当做是注释忽略掉,另外一种注释是“/*”和“*/”之间的文本也会被当成是注释,这种注释可以跨行书写,但不能嵌套的注释,例如:

//这里是单行注释

/*这里是一段注释*/     //这里是另外一段注释

/*

*这里是大段注释(可以多行)

*/

1.3直接量

直接量,就是程序中使用的数据值,下面列出的都是直接量

12//数字

1.9//小数

“Holle World”//字符串文本

“Hi”//另外一个字符串

true//布尔值

false//另外一个布尔值

/javascript/gi  //正则表达式(模糊匹配)

null  //空

 1.2.4标识符和关键字

标识符符就是一个名字,在javasrcipt中,标识符用对变量和函数进行命名,或者用做javascript代码中的循环语句跳转位置的标记,javascript标识符必须以字母,下划线(_)或美元符($)开始,后续的字符可以是字母,数字,下划线或者美元符(数字不允许作为首字符出现的,以便javascript可以轻易分开标识符和数字),下面是合法的标识符

i

my_variable_name

v13

_dummy

$str

 保留字

javascript 把一些标识符拿出来用做自己的关键字,因此,就不能在程序中把这些关键字用做标识符了:

break    delete  function  return typeof  case  do  if  switch  var   catch  else  in  this  void continue  false  instanceof  throw  while  debugger  finally   new true with

default  for  null   try

javascript同样保留了一些关键字,这些关键字在EcmaScript 5保留 了这些关键字:

class   const  enum  export   extends  import super

此外,下面这些关键字在普通的javascript代码中是合法的,但在严格模式下是保留字

implements let  private  public   yield

interface package protected  static

严格模式同样对下面的标识符使用做了严格的限制,它们并不完全是保留字,但不能用做变量名,函数名或参数名:

arguments eval

ECMAScript3将Java的所有关键字都列为自己的保留字,尽管这些保留字在ECMSAScript 5中放宽了限制,但如果你希望代码在ECMAScript 3 实现解释器上运行的话。

应该避免使用这些关键字作为标识符

abstract double goto  native  static  boolean  enum implements package super   byte  export import package super byte export import private sybchronized

char final interface public transient const float long short  volatile

Javascript 预定义了很多全局变量和函数,应当避免把他们的名字用做变量名,和函数名:

arguments  encodeURI  Infinity  Number RegExp Array encodeURIcomponent isFinite object String  Boolean  Error   isNaN  parseFloat   SyntaxError  Date eval    JSON  parseInt TypeError decodeURL EvalError Math RangeEError   undefined   decodeURICpmponent Function  NaN   ReferenceError URIError

JavaScript的具体实现可能定义独有的全局变量和函数,每一种特定的JavaScript运行环境(客户端,服务端等)都有自己的一个全局属性列表,这一点是需要牢记的。

1.2.5 可选的分号

和其他的语言一样,javascript使用分号(;)将语句分隔开,这对增强代码的可读性和整洁性是非常重要的,缺少分隔符,一条语句的结束就成了下一条语句的开始了。反之亦然,在JavaScript中,如果语句各种独占了一行,通常可以省略掉语句之间的分号,我个人习惯是使用(;)来明确标记语句结束,即使在并不完全需要分号的时候也是如此。(我比较推荐这种方式,方面代码的阅读,和避免出错)。另外一种编码风格是,在任何可以省略掉分号的地方将其省略掉,只有在不得不用时才使用上分号。

本文只做个人复习总结使用,如有写的有错误的地方,希望大家指出,我定及时改正....

一.javascript核心部分:1.词法结构的更多相关文章

  1. JavaScript权威指南2.词法结构

    字符集 1.用16位的Unicode字符集编写的,可以表示地球上通用的每一种书面语言.国际化 2.每个字符都是用两个字节表示的 3.大小写敏感:关键字.变量.函数名.标识符:HTML并不区分大小写 H ...

  2. JavaScript语言核心之词法结构

    编程语言的词法结构是一套基础性规则,用来描述如何使用这门语言来编写程序.作为语法的基础,它规定了诸如变量名是什么样的.怎么写注释,以及程序语句之间如何分割的等规则. 1.1字符集 JavaScript ...

  3. JavaScript语言核心--词法结构

    编程语言的词法结构是一套基础性规则,用来描述如何使用这门语言来编写程序.作为语法的基础,它规定了诸如变量名是什么样的.怎么写注释,以及程序语言之间如何分隔等规则. 1. 字符集 JavaScript程 ...

  4. javascript基础语法——词法结构

    × 目录 [1]java [2]定义 [3]大小写[4]保留字[5]注释[6]空白[7]分号 前面的话 javascript是一门简单的语言,也是一门复杂的语言.说它简单,是因为学会使用它只需片刻功夫 ...

  5. 2.词法结构-JavaScript权威指南笔记

    今天是第二章.所谓词法结构(lexical structure),就是写代码中最基本的东西,变量命名,注释,语句分隔等,这是抄书抄的... 1.字符集,必须是Unicode,反正Unicode是ASC ...

  6. 4.词法结构-JavaScript权威指南笔记

    今天是第二章.所谓词法结构(lexical structure),就是写代码中最基本的东西,变量命名,注释,语句分隔等,这是抄书抄的... 1.字符集,必须是Unicode,反正Unicode是ASC ...

  7. Javascript权威指南——第二章词法结构,第三章类型、值和变量,第四章表达式和运算符,第五章语句

    第二章 词法结构 一.HTML并不区分大小写(尽管XHTML区分大小写),而javascript区分大小写:在HTML中,这些标签和属性名可以使用大写也可以使用小写,而在javascript中必须小写 ...

  8. 第二章:Javascript词法结构

    编程语言的词法结构是一套基础性的规则,用来描述你如何编写这门语言.作为语法的基础,它规定了变量名是怎么样的,如何写注释,以及语句之间是如何区分的.本节用很短的篇幅来介绍javascript的词法结构. ...

  9. Note | javascript权威指南[第六版] 第2章:词法结构

      语法结构规定了诸如变量名是什么样的.怎么写注释,以及程序语句之间如何分隔等规则.本章用很短的篇幅来介绍JavaScript的词法结构.   2.1.字符集   JavaScript程序是用Unic ...

随机推荐

  1. 【mark】OS是否使用svc方式分开系统空间和用户空间的优劣

    对于Cortex-M单片机,用户程序调用RTOS系统函数有两种思路: 假设创建任务的RTOS函数是xxx_task_create() 第一类:FreeRTOS.RT-Thread中采用的方法,和调用普 ...

  2. (转)Windows 平台下解决httpd.exe: syntax error on line 39

    近来在研究PHP,结果为了Apache的安装伤神不已...小白我在安装后,启动Apache的服务虽然可以,不过,在Apache sevice monitor 中启动services时就会出现如下的问题 ...

  3. Tomcat应用部署

    1.Tomcat安装配置 1.1安装包下载 http://tomcat.apache.org/ 选择下载安装包版本 选择适合当前系统的安装包 安装包目录说明: 1.2环境配置 配置用户名密码conf/ ...

  4. 前端——JavaScript之if语句

    4.1 if语句 如果……否则……  , 让程序出现分支 1        <script type="text/javascript"> 2           va ...

  5. Kong配置参考

    kong配置的官网说明:https://docs.konghq.com/1.0.x/configuration/ 1. 配置加载 如果您通过其中一个官方软件包安装了Kong,Kong会附带默认配置文件 ...

  6. JUnit报告美化——ExtentReports

    美化后效果 美化后的报告,页面清晰简洁.重要信息都可以体现出来,用例通过率,失败的用例和失败原因 主要技术点 ExtentReports JUnit的@Rule 重写TestWatcher的succe ...

  7. docker学习记录

    Container 容器是一种基础工具, 泛指任何容纳其他物品的工具, 可以部分或者完全封闭,被用于容纳,储存, 运输物品, 物体可以放置在容器中, 而容器可以保护内容物 1 Docker Objec ...

  8. Linux系统中lvm简介

    LVM逻辑卷管理器 实战场景:对于生产环境下的服务器来说,如果存储数据的分区磁盘空间不够了怎么办? 答:只能换一个更大的磁盘.如果用了一段时间后,空间又不够了,怎么办?再加一块更大的?换磁盘的过程中, ...

  9. mybatis入门篇:存储过程的操作

    1.无ResultType/ResultMap查询 先定义一个查询的存储过程: DELIMITER // CREATE PROCEDURE `select_user_by_id`( IN userId ...

  10. day44前端开发2之css基础

    web前端开发1一.前端三剑客之css 1.选择器:由标签/类/id单独或组合出现 2.作用域:{}内部区域 3.样式块:满足css链接语法的各种样式 eg:引入的基本样式 <head>  ...