<script>html
alert(123);python
</script>函数
<script src='custom.js'></script>性能
a、变量区分大小写;spa
b、JavaScript中变量是弱类型,即无需声明变量的具体类型,好比int、string等。指针
c、变量定义code
d、变量命名,首字符只能是字母,下划线,$美圆符 三选一htm
e、变量命名规则对象
Camel 标记法
首字母是小写的,接下来的字母都以大写字符开头。例如:
var myTestValue = 0, mySecondValue = "hi";
Pascal 标记法
首字母是大写的,接下来的字母都以大写字符开头。例如:
Var MyTestValue = 0, MySecondValue = "hi";
匈牙利类型标记法
在以 Pascal 标记法命名的变量前附加一个小写字母(或小写字母序列),说明该变量的类型。例如,i 表示整数,s 表示字符串,以下所示“
Var iMyTestValue = 0, sMySecondValue = "hi";
ECMA-262 描述了一组具备特定用途的关键字。这些关键字可用于表示控制语句的开始或结束,或者用于执行特定操做等。按照规则,关键字也是语言保留的,不能用做标识符。如下就是ECMAScript的所有关键字(带*号上标的是第5 版新增的关键字):blog
ECMA-262 还描述了另一组不能用做标识符的保留字。尽管保留字在这门语言中尚未任何特定的用途。但它们有可能在未来被用做关键字。如下是ECMA-262 第3 版定义的所有保留字:
在严格模式下,第5 版还对如下保留字施加了限制:
在 ECMAScript 中,变量能够存在两种类型的值,即原始值和引用值。相似python里面的传值和传引用。一个是内存地址、一个是索引地址或指针。
原始值
存储在栈(stack)中的简单数据段,也就是说,它们的值直接存储在变量访问的位置。
引用值
存储在堆(heap)中的对象,也就是说,存储在变量处的值是一个指针(point),指向存储对象的内存处。
若是一个值是引用类型的,那么它的存储空间将从堆中分配。因为引用值的大小会改变,因此不能把它放在栈中,不然会下降变量查寻的速度。相反,放在变量的栈空间中的值是该对象存储在堆中的地址。地址的大小是固定的,因此把它存储在栈中对变量性能无任何负面影响。以下图所示:
ECMAScript 有 5 种原始类型(primitive type),即 Undefined、Null、Boolean、Number 和 String。
a、Undefined:未定义的。类型是Undefined,值是undefined。
b、Null:空。类型是Null,值是null。值 undefined 其实是从值 null 派生来的,所以 ECMAScript 把它们定义为相等的。
c、Boolean 布尔类型
d、Number类型
e、String 字符串类型
一、由Unicode字符、数字、标点符号组成的序列
二、字符串由单引号或双引号括起
三、字符串中部分特殊字符必须加上转义线\。经常使用的转义字符 \n:换行 \':单引号 \":双引号 \\:右划线
JavaScript是松散类型的语言。当变量被赋值时才肯定数据类型,这一点和python同样。可是比python更松散。
好比:
var a=123;
var b='123';
a+b 的结果为'123123'
typeof(123); #number
引用类型一般叫作类(class),也就是说,遇到引用值,所处理的就是对象。相似python中的type类。其实他自己就是一个类。
var o = new Object(); #typeof(o) object
var oBooleanObject = new Boolean(true);
var oNumberObject = new Number(68);
var oStringObject = new String("hello world");