.
3ss.cn

JavaScript怎么定义变量

标识符命名规则

标识符的组成有字母、数字、## 标题下划线、$、变量名不能以数字开头标识符不能使用内置关键字 if,for,break,var,let,等等标识符应使用驼峰命名形式-变量名组成的单词首字母大写

   var messageAsBoolean = "HHO";

定义变量

定义变量的方式

    var message   = "qqqq";		
    message       = "qqqq"   
	let message   = "qqqq";
	const message = "aaaaa";

var 定义变量会自动提升到顶部作用域,let定义的变量不会提升至首行

	function a()
	{
		console.log(a);   // 不会报错,a作用域会自动提升至顶行,内容为	undefined
		var a = "aaaaaa";
	}

等同于:

	function a()
	{
		var a;
		console.log(a);
	 	a = "aaaaaa";
	}

let 和 var 声明的变量作用域

 let 声明的变量的作用范围是块作用域

	function fun()
	{								//函数块作用域的开始
		if(true){ 					//if语句块作用域的开始
		
		} 							//if语句块作用域的结束

	}								//函数块作用域的结束

 var 声明的变量作用域为函数作用域

	function fun(){ 				//函数作用域的开始

	} 								//函数作用域的结束

 全局声明方式

	/* 1. 不使用 let、var等修饰,直接定义的变量 */
		message = "aaaaaaaa";
	/* 2. 在全局变量区申请的变量 */
		var message = "aaaaaa";
		let message = "aaaaa";
	/* 注: js 文件的开始部分,不在任何函数内 */

条件声明

 var 定义的变量会提升值函数的顶部,重复定义会被替换 */

	function fun(){
		var name = "lili";
		if(true){
			var name = "hho";            //不会报错,代码类似name = 	"hho";
			console.log(name);           //打印结果为hho
		}
		console.log(name);               //打印结果为hho
	}

 let 定义的变量不会被提升至函数的顶部

	function fun(){
		let name = "lili";
		if(true){
			let name = "hho";			//新定义变量name
			console.log(name);			// 打印结果为hho
		}
		console.log(name);				// 打印结果为lili
	}

const 定义的变量

 定义的变量的属性和let相似,但是 const定义的变量值不可被修改

  const name = "hho";					//只可使用,不可修改name变量的值

 定义的变量的作用域为块作用域,和 let 相同

 const 定义变量必须初始化

  const name;    						// 报错
赞(0)
未经允许不得转载:互联学术 » JavaScript怎么定义变量

评论 抢沙发