语法

1、区分大小写

2、标识符

所谓标识符,就是指变量、函数、属性的名字,或者函数的参数。

命名规则:

  • 第一个字符必须是一个字母、下划线(_)或一个美元符号($);
  • 其他字符可以是字母、下划线、美元符号或数字。

按照惯例,ECMAScript 标识符采用驼峰大小写格式,也就是第一个字母小写,剩下的每个单词的首字母大写,例如:

firstSecond
myCar
doSomethingImportant

3、注释

// 单行注释

/*
* 这是一个多行
* (块级)注释
*/

4、严格模式

严格模式是为JavaScript 定义了一种不同的解析与执行模型。

在严格模式下,ECMAScript 3 中的一些不确定的行为将得到处理,而且对某些不安全的操作也会抛出错误。

要在整个脚本中启用严格模式,可以在顶部添加如下代码:

"use strict";

在函数内部的上方包含这条编译指示,也可以指定函数在严格模式下执行:

function doSomething(){
"use strict";
//函数体
}

支持严格模式的浏览器包括IE10+、Firefox 4+、Safari 5.1+、Opera 12+和Chrome。

5、语句

ECMAScript 中的语句以一个分号结尾;如果省略分号,则由解析器确定语句的结尾。

代码块以左花括号({)开头,以右花括号(})结尾。

关键字和保留字

以下就是ECMAScript的全部关键字(带*号上标的是第5 版新增的关键字):

以下是ECMA-262 第3 版定义的全部保留字:

第5 版把在非严格模式下运行时的保留字缩减为下列这些:

在严格模式下,第5 版还对以下保留字施加了限制:

变量

ECMAScript 的变量是松散类型的,所谓松散类型就是可以用来保存任何类型的数据。

定义变量时要使用var 操作符,后跟变量名:

var message;

这行代码定义了一个名为message 的变量,该变量可以用来保存任何值(像这样未经过初始化的变量,会保存一个特殊的值——undefined。

可以在修改变量值的同时修改值的类型。

var message = "hi";
message = 100; // 有效,但不推荐

用var 操作符定义的变量将成为定义该变量的作用域中的局部变量,如果在函数中使用var 定义一个变量,那么这个变量在函数退出后就会被销毁。

function test(){
var message = "hi"; // 局部变量
}
test();
alert(message); // 错误!

省略var 操作符,创建一个全局变量。

function test(){
message = "hi"; // 全局变量
}
test();
alert(message); // "hi"

可以使用一条语句定义多个变量(初始化或不初始化均可),用逗号分隔开即可:

var message = "hi",
found = false,
age = 29;

Javascript学习笔记-基本概念-语法、关键字和保留字、变量的更多相关文章

  1. JavaScript学习笔记-正则表达式(语法篇)

    正则表达式的模式规则是由一个字符系列组成的,包括所有字母和数字在内;大多数的字符(所有字母和数字)都是按字符的直接量来描述带匹配的字符;一些具有特殊语义的字符按照其特殊语义来进行匹配,有些字符需要通过 ...

  2. Javascript学习笔记-基本概念-函数

    ECMAScript 中的函数使用function 关键字来声明,后跟一组参数以及函数体.函数的基本语法如下所示: function functionName(arg0, arg1,...,argN) ...

  3. Javascript学习笔记-基本概念-数据类型

    1.typeof 操作符的返回值: "undefined"——如果这个值未定义: "boolean"——如果这个值是布尔值: "string" ...

  4. Javascript学习笔记-基本概念-语句

    1.if语句 if (condition) statement1 else statement2 也可以像下面这样把整个if 语句写在一行代码中: if (condition1) statement1 ...

  5. Javascript学习笔记-基本概念-操作符

    1.一元操作符 (1)递增和递减操作符 只能操作一个值的操作符叫一元操作符. var age = 29; ++age; var age = 29; --age; var age = 29; var a ...

  6. JavaScript:学习笔记(2)——基本概念与数据类型

    JavaScript:学习笔记(2)——基本概念与数据类型 语法 1.区分大小写.Test 和 test 是完全不同的两个变量. 2.语句最好以分号结束,也就是说不以分号结束也可以. 变量 1.JS的 ...

  7. JavaScript:学习笔记(4)——This关键字

    JavaScript:学习笔记(4)——This关键字 以前这篇帖子是关于闭包的,但是我想弄明白的其实是This关键字.JavaScript的this和Java等面向对象语言中的this大不一样,bi ...

  8. Java程序猿的JavaScript学习笔记(1——理念)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  9. JavaScript:学习笔记(5)——箭头函数=>以及实践

    JavaScript:学习笔记(5)——箭头函数=>以及实践 ES6标准新增了一种新的函数:Arrow Function(箭头函数).本文参考的链接如下: MDN箭头函数:https://dev ...

随机推荐

  1. bzoj5104 Fib数列(BSGS+二次剩余)

    快AFO了才第一次写二次剩余的题…… 显然应该将Fn写成通项公式(具体是什么写起来不方便而且大家也都知道),设t=((1+√5)/2)n,T=√5N,然后可以得到t-(-1)t/t=√5N,两边同时乘 ...

  2. [一般图最大匹配]Bimatching

    10566 Bimatching 题意:一个男生必须跟两个女生匹配,求最大匹配 思路:一般的二分图匹配做不了,网络流也不会建图,这题采用的是一般图匹配 首先在原来二分图的基础上,将一个男生拆成两个点 ...

  3. LeetCode No.100,101,102

    No.100 IsSameTree 相同的树 题目 给定两个二叉树,编写一个函数来检验它们是否相同. 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的. 示例 输入: 1 1 / \ ...

  4. kubectl格式化输出和调试

    1.格式化输出 以特定的格式想终端输出详细信息,可以在 kubectl 命令中添加 -o  或者 -output 选项 输出格式 描述 -o=custom-columns=<spec> 使 ...

  5. Number of Digit One(Medium)

    1.算法说明: 如3141592,在m(digitDivide)=100时,即要求计算百位上"1"的个数 其中a为31415,b为92,31415中出现了3142次"1& ...

  6. [LC] 108. Convert Sorted Array to Binary Search Tree

    Given an array where elements are sorted in ascending order, convert it to a height balanced BST. Fo ...

  7. OpenAL介绍

    OpenAL(Open Audio Library)是自由软件界的跨平台音效API,由Loki Software,使用在Windows.Linux 系统上,用在音效缓冲和收听中编码. OpenAL设计 ...

  8. OpenCV 使用二维特征点(Features2D)和单映射(Homography)寻找已知物体

    #include <stdio.h> #include <iostream> #include "opencv2/core/core.hpp" #inclu ...

  9. 学习python-20191230(1)-Python Flask高级编程开发鱼书_第04章_应用、蓝图与视图函数

    视频06: 1.自动导包快捷键——默认为alt + enter 键组合          选中的字符由小写变为大写——Ctrl + Shift + U键组合 2.DataRequired()——防止用 ...

  10. nonparametric method|One-Mean t-Interval Procedure|

    8.4 Confidence Intervals for One Population Mean When σ Is Unknown 原先是 standardized version of x bar ...