前端之路-初期-JavaScript变量

前端之路-初期-JavaScript变量

1.定义

在日常生活里,有些东西是固定不变的,有些东西则会发生变化。例如人的姓名和生日是固定不变的,但是心情和年龄却会随着时间的变化而变化。人们把这些会发生变化的东西称为变量(variable)。--JavaScript.DOM编程艺术(第2版)

2.特性

        (1)javascript中的变量是松散类型的,可以保存任何类型的数据,变量只是在特定时间用于保存特定值的一个名字而已,由于不存在定义某个变量必须要保存何种数据类型值的规则,变量的值及其数据类型可以在脚本的生命周期内改变 。

 (2)JS变量可用于存放值和表达式

3.变量命名

 (1)变量可以使用短名称,也可以使用描述性更好的名称。
 (2)变量必须以字母开头

 (3)变量也能以 $ 和 _ 符号开头(不过不推荐)

            一般都是框架内的属性或者变量会加$  或者 加$作为一个JQuery变量,来启动变量名  "_"下划线开头 一般指的是内部私             有变量。

 (4)变量名称对大小写敏感

(5)其他字符可以是字母、下划线、美元符号或数字

(6)字符中的字母可以包括拓展的ASCII或Unicode字母字符,也可以使用中文

(7)不能使用关键字、保留字、true、false和null 

(8)标识符应采用小驼峰格式,第一位应该是数据的类型,常见的标识如下:

        整数       i    Integer    iAge

4.声明变量

    创建变量通常称为声明,使用 var 关键词来声明变量,变量声明之后,该变量的值为undefined 如需向变量赋值,请使用等号,也可以直接在声明中赋值。(+= 不对)
    重新声明 JS变量,该变量的值不会丢失。
5.编码情况

当js外部文件是UTF-8编码时,如果Html没有设置UTF-8编码,会导致中文乱码。当Html的编码与JS外部文件的编码一致时,便不会出现乱码。

6.声明提升

javascript中的变量声明会提升到所有函数和语句之前,但提升后的变量将返回undefined,因为只是声明提升,赋值操作并没有提升。

console.log(iAge);
var iAge = 23;
console.log(iAge);

7.标识符解析

    标识符解析是沿着作用域链一级一级地搜索标识符的过程。搜索过程始终从作用域链的前端开始,然后逐级地向后回溯,直到找到标识符为止。

  如果局部环境中存在着同名标识符,就不会使用父环境中的标识符

  如果找不到标识符,表示标识符尚未声明,通常会导致错误发生

  JavaScript引擎在优化标识符查询方面做得不错,访问父环境和局部环境的标识符的时间差别可以忽略不计

var iTestVariable1 = 23;
var iTestVariable2 = 1;

function fPartGoble() {
	iTestVariable1 = 28;      //给上边全局的iTestVariable 赋值为28
	console.log("局部1:"+iTestVariable1);   //结果:  28
	var iTestVariable2 = 3;
	console.log("局部2:"+iTestVariable2);   //结果:  3
}

fPartGoble();

console.log("全局1:"+iTestVariable1);  //结果:28  给赋值了
console.log("全局2:"+iTestVariable2);  //结果:1  


参考w3chool

参考http://www.jb51.net/article/77391.htm

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值