javascript初识

JavaScript初识

目前市场上有成千上万编程语言,也许你也听说或者用过它们的一门或者多门,像JavaScript、Java、Perl、C、C++和C#等等,JavaScript只是其中的一门编程语言而已,JavaScript 是属于HTML 和Web的编程语言,几乎所有的前端开发人员都要学习和使用JavaScript这门脚本语言。 JavaScript是一门非常棒的语言,JavaScript有很多十分流行的框架,如Angular、Node、Ember和Vue等。

程序的基本概念

什么是代码

代码就是人类可读的计算机语言指令,是程序员按照一定的程序设计语言规范(如JavaScript)书写的,写出的代码供计算机识别和执行,这样能够是计算机执行某种特定的操作,完成相应的功能。 计算机并不是“智能”的,不会自动进行所有的工作,它之所以能够完成某个功能,是因为程序员(软件工程师)使用计算机语言事先编写代码,然后输入计算机中执行的。

什么是编程

编程就是编写程序的简称。编程的本质就是程序员按照某种语言的编程规范编写一段代码,计算机执行完成后,可以实现某一个功能,而这个功能就是为了解决人类在现实中的某个问题。 人类通过编写出的程序和计算机进行交互,并通过编程,让计算机完成某种任务或者工作。

计算机程序运行的过程

对于计算机来说,本质上只需识别和执行0和1组成的二进制指令(如010110101110000),而源码就是编写的最原始程序的代码。这个代码也通常称为高级语言,是人类能够理解的符号,而计算机并不能识别这些符号,所以必须把人类能够理解的符号“翻译”成计算机能够识别的符号,这个过程叫做编译,如图1-1所示。

编程语言

总所知周,人类语言有英语、法语、日语和德语等,计算机的编程语言和人类语言一样,也有很多种,如C、Java、C#、JavaScript和JavaScript等。这些语言,每种语言都有自己的语法,使用这些编程语言,可以编写代码,用来定义计算机程序的形式。 电脑每做的一次动作、一个步骤,都是按照已经用计算机语言编好的程序来执行的,程序是计算机要执行的指令的集合,而程序全部都是用我们所掌握的某一种语言来编写的。

JavaScript概述

JavaScript语言的发展历史

在上个世纪的1995年,当时的网景公司正凭借其Navigator浏览器成为Web时代开启时最著名的第一代互联网公司。 由于网景公司希望能在静态HTML页面上添加一些动态效果,于是叫Brendan Eich这哥们在两周之内设计出了JavaScript语言。你没看错,这哥们只用了10天时间。 为什么起名叫JavaScript?原因是当时Java语言非常红火,所以网景公司希望借Java的名气来推广,但事实上JavaScript除了语法上有点像Java,其他部分基本上没啥关系。

ECMAScript

因为网景开发了JavaScript,一年后微软又模仿JavaScript开发了JScript,为了让JavaScript成为全球标准,几个公司联合ECMA(European Computer Manufacturers Association)组织定制了JavaScript语言的标准,它是按照ECMA-262和ISO/IEC 16262标准制定的一种脚本语言规范。被称为ECMAScript标准。ECMAScript,简称ES。 所以简单说来就是,ECMAScript是一种语言标准,而JavaScript是网景公司对ECMAScript标准的一种实现,其他的还有JScript、ActionScript等。 那为什么不直接把JavaScript定为标准呢?因为JavaScript是网景的注册商标。 不过大多数时候,我们还是用JavaScript这个词。如果你遇到ECMAScript这个词,简单把它替换为JavaScript就行了

JavaScript版本

截止到2017年年底,ECMAScript共发布了8个版本: ECMAScript 1:1997年06月:发布首版。
ECMAScript 2:1997年06月:修改规范完全符合ISO/IEC 16262国际标准。
ECMAScript 3:1999年12月:增加正则、更好的文字处理、新的控制语句、try/catch异常处理、更加明确的错误定义,数字输出格式等等。
ECMAScript 4:放弃发布。
ECMAScript 5:2009年12月:完善了ECMAScript 3版本、增加"strict mode,"(严格模式)、以及新的功能,如getter和setter、JSON库支持和更完整的对象属性。
ECMAScript 5.1:2011年06月:使规范更符合ISO/IEC 16262:2011第三版。
ECMAScript 6:2015年06月:第六版的名字有很多,可以叫ECMAScript 6(ES6),也可以叫ECMAScript 2015(ES2015)。 此版本增加了非常重要的东西:let、const、class、modules、 arrow functions,、template string, destructuring, default, rest argument、binary data、promises等等。

JavaScript特点

JavaScript是互联网上最流行的脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。用来给html网页增加动态功能。

1、解释性脚本语言。JavaScript是一种解释型的脚本语言,C/C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行解释执行。
2、基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。
3、弱类型的变量类型。JavaScript采用的是弱类型的变量类型,对使用的数据类型未作出严格的要求,是基于java基本语句和控制脚本语言,其设计简单紧凑。
4、动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过web服务器就可以对用户的输入作出响应。
5、跨平台。JavaScript脚本语言不依赖于操作系统,仅需要浏览器支持。

使用IDLE编写Hello

其中script标签可以在head中,也可以在body中,建议写在紧挨结束body的上面。 script标签有一个属性type,用来指明脚本的类型,常把type="text/javascript"。

使用记事本编写

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title>编写第一个JS程序</title>
    </head>
    <body>
        <script>
            alert("hello,JavaScript!")
        </script>
    </body>
</html>

使用IDLE编写

注释

JavaScript语言中允许使用//注释一行代码,多行注释以 /* 开头,以 */ 结尾,被注释的代码会被解释器忽略。 注释的作用主要有以下两点。 第1点,在代码上注明编写代码的作者、时间和功能,方便自己与他人进行交流时能够理解这段代码。 第2点,屏蔽无用的代码,即可以把不想运行也不想删除的程序段屏蔽起来,经常用于调试程序,缩小错误范围

单行注释 //
<script type="text/JavaScript">
    /*alert("欢饮进入JavaScript世界!")*/
 </script>
多行注释 /** **/
   <script type="text/JavaScript">
   /*alert("欢饮进入JavaScript世界!")
   alert("欢饮进入JavaScript世界!")
   alert("欢饮进入JavaScript世界!")
  alert("欢饮进入JavaScript世界!")*/
  </script>

JavaScript 弹窗

可以在 JavaScript 中创建三种消息框:信息提示框、确认框、输入框。

信息提示框

信息提示框经常用于确保用户可以得到某些信息。当信息提示框出现后,用户需要点击确定按钮才能继续进行操作。 语法

window.alert("sometext");
window.alert() 方法可以不带上window对象,直接使用alert()方法。

实例

<!DOCTYPE html>
<html>
<head>
<script>
alert("你好,我是一个警告框!");
</script>
</head>
<body>
</body>
</html>
确认框

确认框通常用于验证是否接受用户操作。当确认框弹出时,用户可以点击 "确认" 或者 "取消" 来确定用户操作。 当点击 "确认", 确认框返回 true, 如果点击 "取消", 确认框返回 false。 语法

window.confirm("sometext");
window.confirm() 方法可以不带上window对象,直接使用confirm()方法。

实例

var r=confirm("按下按钮");
if (r==true)
{
x="你按下了\"确定\"按钮!";
}
else
{
x="你按下了\"取消\"按钮!";
}
输入框

提示框经常用于提示用户在进入页面前输入某个值。 当提示框出现后,用户需要输入某个值,然后点击确认或取消按钮才能继续操纵。 如果用户点击确认,那么返回值为输入的值。如果用户点击取消,那么返回值为 null。 语法

window.prompt("sometext","defaultvalue");
window.prompt() 方法可以不带上window对象,直接使用prompt()方法。

实例

var person=prompt("请输入你的名字","Harry Potter");
x="你好 " + person + "! 今天感觉如何?";
alert(x)

需要注意的是反斜杠 + "n"(\n) 来设置换行。
实例

alert("Hello\nHow are you?");

页面输出

使用document.write(‘内容’)和document.writeln(‘内容’),在页面上输出内容。这两者的区别是后者多一个空格。 writeln() = write()+write("\n"),但在HTML的解析中,只会把解析成换行,"\n"只会被解析成空白符,空白符就被解析成一个空格。所以,一般情况下:writeln()和write()的区别是,前者多一个空格。 还有一种情况下,writeln()会换行,当在pre、textarea标签中时,HTML不会解析空白符,writeln()和write()的区别是,前者会换行。

控制台输出

使用console.log(message),在控制台上输出内容。

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JavaScript的Hello</title>
</head>
<body>
<script type="text/JavaScript">
   console.log("hello,JavaScrip!")
</script>
</body>
</html>

页面引入js的三种方式

内部方式

把JavaScript代码直接写在页面的或者中。 语法结构总结:

1、<script>javascript代码</script>
2、<script type=’text/javascript’>javascript代码</script>
3、<script language=’javascript’>javascript代码</script>
外部方式

如果把JS源代码直接写在某个具体的页面上时(通常放在body结束标签之前),这样的成为内部的JavaScript。但是当JS 代码越来越庞大的时候,我们最好把它独立另存为一个JS文件,扩展名为.js,然后在页面上引入即可,这样的称为外部的JS文件,它具有维护性高、可缓存(加载一次,无需加载)、方便未来扩展、复用性高等特点。 引用外部的JS文件,使用script的标签的src属性, 语法如下:

<script type="text/javascript" src="js/hello.js"></script>

需要注意几点: 1、必须成对出现。 2、不可以在script标签中写代码,如下是不对的。

   <script src="demo1.js">alert('xxxx')</script>

3、当使用异步加载时,在html5中script中的有async属性即可,可以不赋值,表示异步。如果没有该属性,就是同步。

行内方式

一般就是在我们的html标签中写js语法:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>JavaScript的行内使用方式</title>
</head>
<body>
<button onclick="alert('ok')">OK</button>
<button onclick="javascript:alert('cancle')">cancle</button>
</body>
</html>

JavaScript组成

JavaScript是ECMAScript、文档对象模型(document object model:DOM)、浏览器对象模型(brower object model:BOM)由三部分构成,其核心是ECMAScript,它描述了该语言的语法和基本对象;DOM 描述了处理网页内容的方法和接口,通过 DOM,可以访问所有的 HTML 元素,连同它们所包含的文本和属性,可以对其中的内容进行修改和删除,同时也可以创建新的元素;BOM 描述了与浏览器进行交互的方法和接口,BOM提供了独立于内容而与浏览器窗口进行交互的对象,例如可以移动,调整浏览器大小的window对象,可以用于导航的location对象与history对象,可以获取浏览器,操作系统与用户屏幕信息的navigator与screen对象,可以使用document作为访问HTML文档的入口,管理框架的frames对象等.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值