JavaScript基础简介

一、JavaScript(JS)简介:

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。

它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTML网页增加动态功能。Node.js。
在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为NetscapeSun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与SelfScheme较为接近。

为了取得技术优势,微软推出了JScriptCEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript

一、JavaScript(JS)简介:

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。

它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTML网页增加动态功能。Node.js。
在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为NetscapeSun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与SelfScheme较为接近。

为了取得技术优势,微软推出了JScriptCEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript

组成部分:

  1. ECMAScript(核心):JavaScript 语言基础规定了 JavaScript 脚本的核心语法,如 数据类型、关键字、保留字、运算符、对象和语句等,它不属于任何浏览器
  2. DOM(文档对象模型):规定了访问HTMLXML的接口(提供了访问 HTML 文档(如bodyformdivtextarea等)的途径以及操作方法)
  3. BOM(浏览器对象模型):提供了独立于内容在浏览器窗口之间进行交互的对象和方法(提供了访问某些功能(如浏览器窗口大小、版本信息、浏览历史记录等)的途径以及操作方法)

基本特点:

  • 是一种解释性脚本语言(代码不进行预编译)。
  • 主要用来向HTML(标准通用标记语言下的一个应用)页面添加交互行为。
  • 可以直接嵌入HTML页面,但写成单独的js文件有利于结构和行为的分离。

日常用途:

  • 网页特效:嵌入动态的HTML页面
  • 交互式操作:对浏览器事件做出响应
  • 表单验证:在数据被提交到服务器之前验证数据
  • web游戏(网页游戏)
  • 服务器脚本开发等

二、JavaScript存在的位置:

方式1:

<html>标签中,任何地方添加<script> </script>标签,标签中内容就是js代码. 虽然可以放在页面的任何地方,但是规范放在<head>标签中。

<script type = "text/javascript">
    //当页面加载的时候,会执行大妈
    alert(123);
</script>

方式2:

单独使用一个文件来编写javascript代码(js文件),在需要使用的页面中引入该文件

<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type = "text/javascript" src="index.js">
</script>
</head>

方式3:

把代码编写的a标签href属性中,点击a标签的时候,就执行里面代码

<a href="javascript:alert(123)">
</a>

三、基本语法

3.1. JavaScript中的标识符

变量,常量,函数,语句块也有名字,我们统统称之为标识符。标识符可以由任意顺序的大小写字母数字_$ 组成,标识符不能以数字开头,不能是JavaScript中的保留字或关键字

合法的标识符举例:

indentifier、username、user_name、_userName、$username

非法的标识符举例:

int、98.3、Hello World

JavaScript严格区分大小写.usernameuserName是两个完全不同的符号

JavaScript程序代码的格式:

每条功能执行语句的最后必须用分号 ; 结束,每个词之间用空格、制表符、换行符或大括号、小括号这样的分隔符隔开。

语句块使用 { } 来表示

JavaScript程序的注释:
/*…*/中可以嵌套 // 注释,但不能嵌套 /*…*//**..文档注释.*/

3.2. JavaScript中的变量

  1. 声明变量要使用var关键字:var name; //一般不使用name作为变量名
  2. 声明变量的同时为其赋值:var name = "will";
  3. 对已赋值的变量赋予一个其他类型的数据:name = 17;
  4. 不事先声明变量而直接使用,报错 not defined(未定义)

提示:

javascript定义变量无需指定类型,任何类型都使用var声明
变量的打印:

  • 使用alert(内容);
  • 使用console.debug(内容);

注意:只有W3C的浏览器才支持(IE不行)

3.2. JavaScript中的基本类型和常量

Number(数字类型)
3.2.1. 整型常量(10进制\8进制\16进制)
  • 十六进制以0x0X开头,例如:0x8a
  • 八进制必须以0开头,例如:0123
  • 十进制的第一位不能是0(数字0除外),例如:123
3.2.2. 实型常量

12.32、193.98、 5E7、4e5等。

特殊数值:

  • NaN(Not a Number)、Infinity(除数为零),所对应的判断函数isNaN()isFinite()
  • Boolean(布尔值) truefalse
  • String字符串(

注意:

js中没有char类型,所以 a 也是一个字符串,“a book of JavaScript”、‘a’、 “a”、“”。

  1. 字符串中的特殊字符,需要以反斜杠 ( \ ) 后跟一个普通字符来表示。
  2. null常量:表示引用任何的内存空间.
  3. undefined常量 (未定义,定义未赋值)
3.2.3. JavaScript中的运算符
  1. 算术运算符:+,-,*,/
  2. 赋值运算符:=
  3. 比较运算符:>,<
  4. 逻辑运算符:&&,||,!
  5. 三元运算符:表达式 ? value1 : value2
  6. 位运算符
3.2.4. JS中特殊存在的案例

问题:=====的区别:

  1. ==:用来比较变量或者常量的内容,不管数据类型.
  2. ===:比较数据类型和内容,若数据类型相同,且内容相同返回true.
console.debug(17 == "17");//true
console.debug(17 === "17");//false

注意:在逻辑运算中,0、""、falsenullundefinedNaN均表示false

  1. a && b:将a, b转换为Boolean类型, 再执行逻辑与, 若表达式结果为true返回b, false返回a
  2. a || b:将a, b转换为Boolean类型, 再执行逻辑或, 若表达式结果为true返回a, false返回b

&&|| 运算符的区别(开关):

  • &&操作:返回最后一个为true的值,或者第一个为false的值
  • || 操作:返回第一个为true的值,或则最后一个为false的值
console.debug(true && true) // true
console.debug(1 && true) //true
console.debug(1 && 2) //2
console.debug("A" && 2) //2
console.debug("" && 2)  //""
console.debug(null && "B") //null
console.debug("A" && "B") //B
console.debug(1 && 2 && 3) //3
console.debug(1 && null && 3) // null
console.debug("" && null && 0) // ""

3.3. 函数

作用:

  1. 将脚本编写为函数,就可以避免页面载入时执行该脚本。
  2. 函数包含着一些代码,这些代码可以多次被调用。

函数的定义和调用:

top Created with Sketch.