Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JavaScript基础语法 #90

Open
Qingquan-Li opened this issue Apr 22, 2018 · 0 comments
Open

JavaScript基础语法 #90

Qingquan-Li opened this issue Apr 22, 2018 · 0 comments

Comments

@Qingquan-Li
Copy link
Owner

Qingquan-Li commented Apr 22, 2018

JavaScript 的基础语法

  1. 注释
  2. 变量
  3. 数据类型
  4. 运算符
  5. 流程控制
    • 顺序结构
    • 分支结构
    • 循环结构

一、注释

JavaScript 的注释方法,与 Java 的注释相同

语法:

<script type="text/javascript">
	//单行注释
	/* 
	用于多行注释;
	与 Java 的注释相同
	*/ 
	document.write("请合理使用注释"); //作该行代码的注释
	window.alert("我是确认框"); /*同样可以是多行注释*/
</script> 

二、变量

  • JavaScript 变量用于保存、保存表达式
  • 由于 JavaScript 对大小写敏感,变量名也对大小写敏感 (yY 是 两个不同的变量)
  • 变量必须以 字母下划线美元符$ 开始,不能使用关键字作为变量名。
  • 变量命名建议使用驼峰命名法(变量、对象和函数的名称建议使用驼峰命名法)
  • It's a good programming practice to declare all variables at the beginning of a script.

声明变量

在 JavaScript 中创建变量称为声明变量,Declaring (Creating) JavaScript Variables

  • JavaScript 的变量是通过 var 语句来声明的,无需指定数据类型( JavaScript 是动态语言)

    // After the declaration, the variable has no value. 
    // Technically it has the value of "undefined".
    var language;
    // To assign a value to the variable, use the equal sign:
    language = "JavaScript";
    // 在声明变量时赋值
    var language = "JavaScript";
  • 声明多个变量,之间用逗号隔开

    var language = "JavaScript", company = "Netscape", year = 1995;
  • 省略 var 语句,直接赋值给一个未声明的变量

    // 如果把值赋给尚未声明的变量,该变量将被自动作为全局变量声明,即使它在函数内执行。应尽量避免使用全局变量,以免团队开发变量冲突
    num = 100; // 相当于 window.num = 100; (num为全局变量)

JavaScript 变量的使用

JavaScript 的变量(同 Java 一样)先声明后使用

 var language = "JavaScript";
 var company = "Netscape";
 var year = 1995;
 var str = language + " created by " + company + " in " + year;
 alert(str);

变量的作用域(全局/局部变量)

  • 变量作用域
    • 全局变量
      • 任何地方都可被调用,公共的( public )
    • 局部变量
      • 只能在函数内部调用,私有的( private)

经验: 应尽量避免使用全局变量,以免团队开发变量冲突。

  • 局部变量
    • 在函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它
    • 只要函数运行完毕,本地变量就会被删除
  • 全局变量
    • 在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它
  • 变量的生存期
    • 变量的生命期从它们被声明的时间开始
    • 局部变量会在函数运行以后被删除
    • 全局变量会在页面关闭后被删除
  • 向未声明的变量来分配值
    • 如果把值赋给尚未声明的变量,该变量将被自动作为全局变量声明
      • carName="Volvo"; 将声明一个全局变量 carName (相当于 window.carName="Volvo"; ),即使它在函数内执行

三、数据类型

数据类型 说明
Undefined 1. 类型只有一个值,即 undefined ;2. 未定义或定义未赋值
Null 表示尚未存在的对象,与 undefined 值相等
Number var iNum = 23; //整数 , var iNum = 23.0; //浮点数
Boolean true 和 false
String 一组被引号(单引号或双引号)括起来的文本(字符串):var string1="This is a string";
  • 数据类型转换
    • 转换函数
      • parseInt():字符串转换为整数
      • parseFloat():字符串转换为浮点数
      • toString():返回字符串
    • 强制类型转换
      • Boolean():转化为逻辑值
      • Number():对象转化为数字
      • String():对象转化为字符串

四、运算符

  • typeof 运算符
    • typeof 检测变量的返回值,为字符串类型。 typeof 运算符返回值如下:
      • undefined:变量被声明后,但未被赋值
      • string:用单引号或双引号来声明的字符串
      • boolean: true 或 false
      • number:整数或浮点数
      • function:函数方法
      • object:对象 或 数组 或 Null 类型
类型 运算符号
算术运算符 + - * / % ++ --
赋值运算符 = += -= *= /= %=
比较运算符 > < >= <= == != ===
逻辑运算符 && ll !
条件运算符 variableName = (condition) ? value1 : value2;

注意:一个 = 是赋值,两个 = 是判断值相等,三个 = 判断值和类型都相同


五、流程控制

  • 顺序结构
  • 分支结构
    • if 条件语句
      • 附:条件运算符: variableName = (condition) ? value1 : value2;
    • switch 分支语句
  • 循环结构
    • while 循环语句
    • do while 循环语句
    • for 循环语句
    • for in 循环语句
    • 控制循环结构
      • break 结束循环
      • continue ​终止当前循环,从下一个值继续执行。(忽略本次循环剩下的语句,开始下一次循环,并不会终止循环)
循环语句小结
  • 区别
    • while 先判断后执行
    • do while 先执行后判断,至少执行一次
    • for 先判断,再执行
    • for in 遍历对象成员
  • 使用场景
    • 不知道循环次数,通常选择 whiledo while
    • 知道循环次数,通常选择 for 循环
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant