JS_高程3.基本概念(1)
1.语法
(1)ECMAScript中的一切(变量,函数名和操作符)都是区分大小写的。
(2)标识符
标识符的第一个字符必须是字母,下划线或是美元符号。
其他字符可以是字母,下划线,美元符号和数字。
ECMAScript标识符采用驼峰大小写的格式。
(3)严格模式(strict mode)
严格模式是为了Javascript定义了一种不同的解析与执行模型。在严格模式下,ECMAScript3中的一些不确定的行为将得到处理,而且对某些不安全的 操作也会抛出错误。
要在整个脚本中启用严格模式,可以在顶部添加如下代码:
“use strict”;
它是一个编译指示(pragma),用于告诉支持的Javascript引擎切换到严格模式。
2.关键字和保留字(高程P21)
3.变量
ECMAScript的变量是松散类型的,可以保存任何类型的数据。
定义变量使用 var 操作符。
注意:
用 var 操作符定义的变量将成为定义该变量的作用域中的局部变量。即如果在函数中定义一个变量,当函数退出后就会被销毁。
eg:
<script type="text/javascript">
function test(){
var message="hi";
}
test();
alert(message);
</script>
结果会出现错误:

这里message是在函数中使用了var定义的。当函数被调用时,就会创建该变量并为其赋值,之后这个变量会立即被销毁,所以当使用alert()函数时,会导致错误。
当省略var操作符时可以定义全局变量,这样只要调用一次test()函数,这个变量就有了定义,就可以在函数外部的任何地方被访问到了。
<script type="text/javascript">
function test(){
message="hi";
}
test();
alert(message);
</script>

注意:
虽然省略 var 操作符可以定义全局变量,但是不推荐这样做,因为在局部作用域中定义全局变量很难维护,而且如果有意地忽略 var操作符,也会因为相应变量不会马上就有定义而导致不必要的混乱。
给未经声明的变量赋值在严格模式下会导致抛出ReferenceError错误。
在严格模式下,不能定义名为eval或arguments的变量,否则会出现语法错误。
Javascript中了eval()函数,arguments对象。
JS_高程3.基本概念(1)的更多相关文章
- JS_高程3.基本概念(4)操作符
ECMA-262用于操作数据值的操作符包括: 算术操作符 位操作符 关系操作符 相等操作符 ECMAScript操作符的不同之处在于:它能够适用于很多值,包括字符串,数字值,布尔值,甚至是对象.(在应 ...
- JS_高程3.基本概念(3)
1.ECMAScript数值的范围 由于内存的限制,在大多数浏览器中,ECMAScript能够拿保存的数据的范围是 5e-324 ~ 1.7976931348623157e+308,其中最小的数值保存 ...
- JS_高程3.基本概念(2)
1.ECMAScript数据类型 5种简单数据类型,分别是: Undefined Null Boolean Number String 1种复杂数据类型: Object (1)typeof操作符——检 ...
- JS_高程3.基本概念(6)函数
1.ECMAScript中的函数使用function关键字来声明. eg: function sum (num1,num2){ alert(num1+num2); } sum(3,7); 注意: 在有 ...
- JS_高程3.基本概念(5)语句
1.if语句 2.do-while语句:后测循环语句,循环体内的代码至少执行一次. 3.while语句:前测循环语句. 4.for语句:前测循环语句. 注意:在ECMAScript中不存在块级作用域, ...
- JS高程3.基本概念(4)操作符
ECMA-262用于操作数据值的操作符包括: 算术操作符 位操作符 关系操作符 相等操作符 ECMAScript操作符的不同之处在于:它能够适用于很多值,包括字符串,数字值,布尔值,甚至是对象.(在应 ...
- JS高程3.基本概念(3)
1.ECMAScript数值的范围 由于内存的限制,在大多数浏览器中,ECMAScript能够拿保存的数据的范围是 5e-324 ~ 1.7976931348623157e+308,其中最小的数值保存 ...
- JS高程3.基本概念(2)
1.ECMAScript数据类型 5种简单数据类型,分别是: Undefined Null Boolean Number String 1种复杂数据类型: Object (1)typeof操作符--检 ...
- JS高程3.基本概念(1)
1.语法 (1)ECMAScript中的一切(变量,函数名和操作符)都是区分大小写的. (2)标识符 标识符的第一个字符必须是字母,下划线或是美元符号. 其他字符可以是字母,下划线,美元符号和数字. ...
随机推荐
- Multi-Fiber Networks for Video Recognition (MFNet)
Motivation:减少时空网络的计算量,保持视频分类精度的基础上,使速度尽可能接近对应网络的2D版本. 为此提出 Multi-Fiber 网络,将复杂网络拆分成轻量网络的集成,利用 fibers ...
- Maven+SpringMVC+SpringFox+Swagger整合示例
查考链接:https://my.oschina.net/wangmengjun/blog/907679 coding地址:https://git.coding.net/conding_hjy/Spri ...
- Windows 7 编译64位boost库
1. 官网下载boost 2. 解压boost到D:\Library\boost_1_64_0 3. 打开 VS2015 x64 本机工具命令提示符,输入 "d:" 回车,再输入 ...
- Elasticsearch - Scroll
Scroll Version:6.1 英文原文地址:Scroll 当一个搜索请求返回单页结果时,可以使用 scroll API 检索体积大量(甚至全部)结果,这和在传统数据库中使用游标的方式非常相似. ...
- awk常见用法
awk作为linux字符搜索,结果统计的实用工具,其在linux日常运维中有着很多的巧妙运用.下面就来技术一下刚刚学到的技巧 #awk命令统计文件夹下所有文件大小 ls -l |awk 'BEGIN ...
- Double.parseDouble(String s)
要把字符串转换为Double类型,只能转换“0.02”这种格式的字符串,不能转换百分比格式的,比如“2%” 这个时候可以Double cbl= Double.parseDouble(“2%”.repl ...
- Java 之 JavaScript (二)
1.DOM a.作用:通过 HTML DOM,可访问 JavaScript HTML 文档的所有元素 b.功能: ①JavaScript 能够改变页面中的所有 HTML 元素 ②JavaScript ...
- shell下获取系统时间
shell下获取系统时间的方法直接调用系统变量 获取今天时期:`date +%Y%m%d` 或 `date +%F` 或 $(date +%y%m%d) 获取昨天时期:`date -d yesterd ...
- SpringBoot学习历程
新年新气象,更新了一下本人所有写的关于SpringBoot的文章目录,感谢大家长期以来的支持,在接下来的日子还会不定期的进行更新. 入门 使用IntelliJ Idea新建SpringBoot项目 S ...
- 《动物世界》的剪刀石头布 HDU --- 6418
题目连接: https://vjudge.net/problem/1812686/origin emmm 这一题的资料来自<动物世界>这一个李易峰演的电影.. 主要的思路就是概率,但是会牵 ...