# 变量
定义:用来存储数据值并且其值能被改变的对象称为变量。
* * * * *
变量字符使用规范:变量的名称用字母、数字、中文字符、下划线等组成的合法标识符来表示。
~~~
a="hello" //变量名称为字母
b1="hello world" //变量名称为字母和数字组合
_="heloo" //变量名称为下划线 "_"
$php="PHP变量" //变量名称为“$"和字母组合
$123="1234,1,2,3,4" //变量名称为“$"和数字组合
one_two_3 = 123; // 合法
中文编程="这就是传说的中文编程" //变量名称为中文字符,可以尝试下中文编程的感觉
~~~
**以上变量名称组合都是合法的有效的。**
**但变量名不能以不能为数字作为第一个开始字符。**
如:1d="error“
这时会报错
可以使用下划线作为变量名或常量名的**首字符**
当下划线作为首字符时表示常量,单个下划线表示变量.
~~~
_="heloo" //单个下划线作为变量名称时合法的,表示变量。
~~~
~~~
import console;
_="heloo"
_="111"
console.log("您输入的是" ,_ );
console.pause(true);
//输出 111
~~~
如果,如果下划线后跟一个其他字符,则表示定义了一个常量。常量的值是不可更改的。
~~~
import console;
_a="heloo"
_a="111"
console.log("您输入的是" ,_ );
console.pause(true);
//报错 can`t modify a read-only field:'_a'
~~~
变量名称区分大小写。
~~~
a1="a1"
A1="AA1"
~~~
a1和A1是不同的两个变量。
* * * * *
# 作用域
~~~
import console;
a="hello"
function h(){
var a="not hello"
return "局部变量:"++a++",我才是全局变量:"++ ..a
}
console.log("您输入的是" ,h());
console.pause(true);
//输出结果为:局部变量:not hello,我才是全局变量:hello
~~~
上面的例子定义了一个变量a和一个函数h(),而函数内容又定义了一个变量a。函数h()输出的结果分别调用了两次a变量。
”++“是字符连接符合,表示连接两个字符串。
输出结果是:”局部变量:not hello,我才是全局变量:hello“。
这里涉及到名称空间的概念。
".."两个连续的点符号表示调用全局变量。“.."等同于global名称空间。因此上面的例子可以修改为:
~~~
return "局部变量:"++a++",我才是全局变量:"++ ..global.a
~~~
输出结果是一样的。
