JavaScript(1)

1.为什么学习 JavaScript?

JavaScript 是 web 开发人员必须学习的 3 门语言中的一门:

HTML 定义了网页的内容

CSS 描述了网页的布局

JavaScript 控制了网页的行为

2.什么是JavaScript?

JavaScript 是一个面向对象的脚本语言,目前互联网上较流行的脚本语言,这门语言可用于 HTML 和 web,更可广泛用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备。

面向对象是一种编程思想

面向对象是从面向过程升华而来。

面向过程--例如:从电视塔到钟楼 

将从电视塔开始到钟楼结束中途所经历的每一步都要记录  【公交车】

面向对象--例如:从电视塔到钟楼 

 将电视塔作为起始对象,钟楼作为结束对象 【滴滴】

脚本语言--编写好以后放到运行环境中直接就能运行的语言。

3.JavaScript的版本

 JavaScript 已经由 ECMA(欧洲电脑制造商协会)通过 ECMAScript 实现语言的标准化。

年份

名称

描述

1997

ECMAScript 1

第一个版本

1998

ECMAScript 2

版本变更

1999

ECMAScript 3

添加正则表达式,添加 try/catch

ECMAScript 4

没有发布

2009

ECMAScript 5

添加 "strict mode",严格模式,添加 JSON 支持

2011

ECMAScript 5.1

版本变更

2015

ECMAScript 6

添加类和模块

2016

ECMAScript 7

增加指数运算符 (**),增加 Array.prototype.includes

ECMAScript 6 也称为 ECMAScript 2015。

ECMAScript 7 也称为 ECMAScript 2016。

4.JavaScript的作用

 JavaScript:直接写入HTML输出流

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>JavaScript实例</title>
    </head>
    <body>
        <p>JavaScript 能够直接写入HTML输出流中</p>
        <script>
            document.write("<h1>这是一个标题</h1>");
            document.write("<p> 这是一个段落</p>")
        </script>
    </body>
</html>

 JavaScript 对事件的反应

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>javascript对事件的反应</title>
    </head>
    <body>
        <h1>我的第一个Javascript</h1>
        <p>javascript 能够对事件作出反应。比如对按钮的店家</p>
        <button type="button" onclick="alert('欢迎')">点我</button>
    </body>
</html>

 JavaScript 改变HTML内容

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>javascript改变HTML内容</title>
    </head>
    <body>
        <h1>我的第一段Javascript</h1>
        <p id="demo"> JavaScript能改变HTML的元素内容。</p>
        <script>
            function myFunction(){   
                x=document.getElementById("demo");   //找到元素
                x.innerHTML="Hello Javascript";    ///改变内容
            }
        </script>
        <button type="button" onclick="myFunction()">点击这里</button>
       
    </body>
</html>

JavaScript:改变图像

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>javascript改变图像</title>
    </head>
    <body>
        <script>
            function changeimage(){
                tu=document.getElementById("myimage")
                if(tu.src.match("preview2")){
                    tu.src="img/preview3.jpg"
                }else{
                    tu.src="img/preview2.jpg"
                }
            }
        </script>
     <img src="img/preview3.jpg" onclick="changeimage()" id="myimage" width="200" height="180" >
     <p>点击图片就可以切换成另一张图片</p>
    </body>
</html>

JavaScript:改变HTML样式

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>javascript改变HTML样式</title>
    </head>
    <body>
    <p id="demo">  javascript能改变HTML元素的样式</p>
    <script>
        function wuhu(){
            x=document.getElementById("demo") //找到元素
            x.style.color="BlueViolet"
        }
    </script>
    <button type="button" onclick="wuhu()">点击这里</button>
    </body>
</html>

JavaScript:验证输入

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>javascript验证输入</title>
    </head>
    <body>
        <h1>验证输入</h1>
        <p>请输入是数字。如果不是数字,浏览器会弹出提示框。</p>
        <input type="text" id="demo">
        <script>
            function wuhu(){
                var x=document.getElementById("demo").value;
                if(isNaN(x)||x.replace(/(^\s*)|(\s*$)/g,"")==""){
                    alert("不是数字")
                }
            }
        </script>
        <button type="button" onclick="wuhu()">点这</button>
    </body>
</html>

5.JavaScript 用法

HTML中的脚本必须位于 <script> 与 </script> 标签之间。

脚本可被放置在HTML页面的<body> 和 <head> 部分中。

<script>标签

如需在HTML页面中插入Javascript,请使用<script>标签

<script> 和 </script> 会告诉 JavaScript 在何处开始和结束。

<script> 和 </script> 之间的代码行包含了 JavaScript.

JavaScript 函数和事件

上面例子中的JavaScript语句,会在页面加载时执行。

通常,我们需要在某个事件发生时执行代码,比如当用户点击按钮时,如果我们把JavaScript代码放入函数中华,就可以在事件发生时调用该函数。

在<head>或者<body>的JavaScript

您可以在HTML文档中放入不限数量的JavaScript

脚本可位于HTML的<body>或者<head>部分中,或者同时存在与两个部分中。

通常的做法就是把函数放入<head>部分中,或者放在页面底部。这样时就可以把他们安置到同一处位置,不会干扰页面内容

<head> 中的 JavaScript 函数

在本例中,我们把一个Javascript函数放置到HTML页面的<heda>部分

该函数会在点击按钮时被调用

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>wangxing</title>
        <script>
            function user_D(){
                document.getElementById("demo").innerHTML="我的第一个JavaScript函数"
            }
        </script>
    </head>
    <body>
     <h1>我的wbe网页</h1>
     <p id="demo"> 一个段落</p>
     <button type="button" onclick="user_D()">点击这里</button>
    </body>
</html>

<body> 中的 JavaScript 函数

在本例中,我们把一个 JavaScript 函数放置到 HTML 页面的 <body> 部分。

该函数会在点击按钮时被调用。

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>wangxing</title>
    
    </head>
    <body>
        <script>
            function user_D(){
                document.getElementById("demo").innerHTML="我的第一个JavaScript函数"
            }
        </script>
     <h1>我的wbe网页</h1>
     <p id="demo"> 一个段落</p>
     <button type="button" onclick="user_D()">点击这里</button>
    </body>
</html>

外部的 JavaScript

我们也可以把脚本保存到外部文件中。外部文件通常包含被多个网页使用的代码。

外部 JavaScript 文件的文件扩展名是 .js。

如需使用外部文件,请在 <script> 标签的 "src" 属性中设置该 .js 文件。

myScript.js 文件

function user_d(){
    document.getElementById("demo").innerHTML="我的第一个Javascript函数";
}
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>wangxing</title>
        <script src="test.js"></script>
    </head>
    <body>
     
     <h1>我的wbe网页</h1>
     <p id="demo"> 一个段落</p>
     <button type="button" onclick="user_d()">点击这里</button>
    </body>
</html>

6.JavaScript 输出显示数据

JavaScript可以通过不同的方式来输出数据

1.使用 window.alert() 弹出警告框。

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>wnagxing</title>
    </head>
    <body>
        <h1>我的第一个页面</h1>
        <p>我的第一个段落</p>
        <script>
            window.alert(5+6);
        </script>
    </body>
</html>

2.使用document.write() 方法将内容写到 HTML 文档中。

例如:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>wnagxing</title>
    </head>
    <body>
        <h1>我的第一个页面</h1>
        <p>我的第一个段落</p>
        <button onclick="Myfunction()">点我</button>
        <script>
          function Myfunction(){
              document.write(Date());
          }
        </script>
    </body>
</html>

3.使用 innerHTML 写入到 HTML 元素。

例如:

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>wangxing</title> 
</head>
<body>
<h1>我的第一个 Web 页面</h1>
<p id="demo">我的第一个段落。</p>
<script>
document.getElementById("demo").innerHTML="段落已修改。";
</script>
</body>
</html>

4.使用console.log()写入到浏览器的控制台

例如:

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>wangxing</title> 
</head>
<body>
<h1>我的第一个 Web 页面</h1>
<p id="demo">我的第一个段落。</p>
<script>
 a=5;
 b=6;
 c=a+b;
 console.log(c);
</script>
</body>
</html>

7.JavaScript 注释

JavaScript 不会执行注释。

我们可以添加注释来对 JavaScript 进行解释,或者提高代码的可读性。

单行注释以 // 开头。

例如:

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>wangxing</title> 
</head>
<body>
<h1 id="myH1"></h1>
<p id="myP"></p>
<script>
// 输出标题:
document.getElementById("myH1").innerHTML="Welcome to my Homepage";
// 输出段落:
document.getElementById("myP").innerHTML="This is my first paragraph.";
</script>
<p><b>注释:</b>注释不会被执行。</p>
</body>
</html>

多行注释以 /* 开始,以 */ 结尾。

<!DOCTYPE html>
<html>
<head>
<title>菜鸟教程测试实例</title>
<meta charset="utf-8">
</head>
<body>
<h1 id="myH1"></h1>
<p id="myP"></p>
<script>
/*
下面的这些代码会输出
一个标题和一个段落
并将代表主页的开始
*/
document.getElementById("myH1").innerHTML="欢迎";
document.getElementById("myP").innerHTML="这是一个段落。";
</script>
<p><b>注释:</b>注释块不会被执行。</p>
</body>
</html>

使用注释来阻止执行

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>wangxing</title> 
</head>
<body>
<h1 id="myH1"></h1>
<p id="myP"></p>
<script>
/*
document.getElementById("myH1").innerHTML="欢迎来到我的主页";
document.getElementById("myP").innerHTML="这是我的第一个段落。";
*/
</script>
<p><strong>注意:</strong>注释块不会被执行。</p>
</body>
</html>

在行末使用注释

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>wangxing</title> 
</head>
<body>
<p id="myP"></p>
<script>
var x=5;   // 声明 x 并把 5 赋值给它
var y=x+2;   // 声明 y 并把 x+2 赋值给它
document.getElementById("myP").innerHTML=y // 把 y 的值写到 myP
</script>
<p><b>注释:</b>注释不会被执行。</p>
</body>
</html>

8.JavaScript 变量

变量是用于存储信息的“容器”

就行代数那样

x=5
y=6
z=x+y

在代数中,我们使用字母(比如 x)来保存值(比如 5)。

通过上面的表达式 z=x+y,我们能够计算出 z 的值为 11。

在 JavaScript 中,这些字母被称为变量。

例如:

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>wangxing</title> 
</head>
<body>

<script>
var x=5;
var y=6;
var z=x+y;
document.write(x+"<br>")
document.write(y+"<br>")
document.write(z+"<br>")
</script>
</body>
</html>

声明(创建)JavaScript 变量

在 JavaScript 中创建变量通常称为"声明"变量。

我们使用 var 关键词来声明变量.

var carname;

变量声明之后,该变量是空的(它没有值)。

如需向变量赋值,请使用等号。

carname="Volvo";

不过,您也可以在声明变量时对其赋值:

var carname="Volvo";

例如:我们创建了名为 carname 的变量,并向其赋值 "Volvo",然后把它放入 id="demo" 的 HTML 段落中.

<!DOCTYPE html>
<html>
<head> 
<meta charset="utf-8"> 
<title>wangxing</title> 
</head>
<body>
<p>点击这里来创建变量,并显示结果。</p>
<button onclick="myFunction()">点击这里</button>
<p id="demo"></p>
<script>
function myFunction(){
	var carname="Volvo";
	document.getElementById("demo").innerHTML=carname;
}
</script>
</body>
</html>

一条语句,多个变量

我们也可以在一条语句中声明很多变量。该语句以 var 开头,并使用逗号分隔变量即可。

var lastname="Doe", age=30, job="carpenter";

声明也可横跨多行:

var lastname="Doe",
age=30,
job="carpenter";

一条语句中声明的多个变量不可以同时赋同一个值:

var x,y,z=1;

运行结果:x,y 为 undefined, z 为 1。

在计算机程序中,经常会声明无值的变量。未使用值来声明的变量,其值实际上是 undefined。

如果重新声明 JavaScript 变量,该变量的值不会丢失.

例如:

var carname="Volvo";
var carname;

关于变量名称的命名

通常我们在创建或者是声明一个变量的时候,都会为这个变量指定一个名称,以方便之后使用。变量可以使用短名称(比如 x 和 y),也可以使用描述性更好的名称(比如 age, sum, totalvolume)。

1.变量必须以字母开头

2.变量也能以 $ 和 _ 符号开头(不过我们不推荐这么做)

3.变量名称对大小写敏感(y 和 Y 是不同的变量)

使用 let 和 const (ES6)

在 2015 年以前,我们使用 var 关键字来声明 JavaScript 变量。

在 2015 后的 JavaScript 版本 (ES6) 允许我们使用 const 关键字来定义一个常量,使用 let 关键字定义的限定范围内作用域的变量。这个我们后面会详细介绍。

9.JavaScript 数据类型

数据类型实际上是用来决定所定义的变量将来所能进行那些操作。

JavaScript中的数据类型有2大类:值类型(基本类型)引用数据类型

值类型(基本类型):字符串(String)、数字(Number)、布尔(Boolean)、对空(Null)、未定义(Undefined)、Symbol。

引用数据类型:对象(Object)、数组(Array)、函数(Function)。

Symbol 是 ES6 引入了一种新的原始数据类型,表示独一无二的值。

JavaScript 拥有动态类型。这意味着相同的变量可用作不同的类型。

例如:

var x;               // x 为 undefined
var x = 5;           // 现在 x 为数字
var x = "John";      // 现在 x 为字符串

JavaScript 字符串

字符串是存储字符(比如 "hello")的变量。

字符串可以是引号中的任意文本。

您可以使用单引号或双引号。

var carname="Volvo XC60";
var carname='Volvo XC60';

您可以在字符串中使用引号,只要不匹配包围字符串的引号即可。

var answer="It's alright";
var answer="He is called 'Johnny'";
var answer='He is called "Johnny"';

JavaScript 数字

JavaScript 只有一种数字类型。数字可以带小数点,也可以不带。

var x1=34.00;      //使用小数点来写
var x2=34;         //不使用小数点来写

极大或极小的数字可以通过科学(指数)计数法来书写。

var y=123e5;      // 12300000
var z=123e-5;     // 0.00123

JavaScript 布尔

布尔(逻辑)只能有两个值:true 或 false。布尔常用在条件判断中。

var x=true;
var y=false;

null

在 JavaScript 中 null 表示 "什么都没有"。

null是一个只有一个值的特殊类型。表示一个空对象引用。

用 typeof 检测 null 返回是object。

你可以设置为 null 来清空对象.

var person = null;           // 值为 null(空), 但类型为对象

undefined

在 JavaScript 中, undefined 是一个没有设置值的变量。

typeof 一个没有值的变量会返回 undefined。

任何变量都可以通过设置值为 undefined 来清空。 类型为 undefined.

var person;     // 值为 undefined(空), 类型是undefined

null undefined 的异同点是什么呢?

共同点:都是原始类型,保存在栈中变量本地。

不同点:

  1. undefined——表示变量声明过但并未赋过值。它是所有未赋值变量默认值。

例如:var a;    // a 自动被赋值为 undefined

  1. null——表示一个变量将来可能指向一个对象。一般用于主动释放指向对象的引用

例如:var emps = ['ss','nn'];

emps = null;     // 释放指向数组的引用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值