原文

  https://www.jianshu.com/p/1e8d8a691aa8

大纲

  1、JavaScript的概念
  2、JavaScript 特点
  3、JavaScript是弱类型语言
  4、JavaScript是ECMAScript、DOM、BOM的集合
  5、JavaScript不太让人接受的原因
  6、JavaScript的发展历史
  7、JavaScript与JAVA的区别
  8、简单的JavaScript例子

1、JavaScript的概念

  JavaScript 是属于网络的脚本语言!
  JavaScript是基于对象和事件的脚本语言
  JavaScript 被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。
  JavaScript 是因特网上最流行的脚本语言。
  JavaScript运行必须依赖于宿主环境语言,即页面语言HTML。
  JavaScript是解释型的语言,解释型:不需要编译,解释器程序会每读取一条语句就执行。运行速度慢,浏览器中默认内置了javascript的解释器程序。
  浏览器中默认内置了javascript的解释器程序。

2、JavaScript 特点

  1、安全性(不允许直接访问本地硬盘),它可以做的就是信息的动态交互。
  2、跨平台性。(只要是可以解释Js的浏览器都可以执行,和平台无关。)

3、JavaScript是弱类型语言

  1、JavaScript是弱类型语言,在很大程度上,JavaScript语言对如何使用不同类型的数据没有严格的要求,在很多情况下,当我们处理数据时,都不需要声明数据类型,JavaScript可以自己计算出它们的类型。
  2、尽管JavaScript对数据类型没有严格的要求,但是我们我们仍需要对其数据的类型进行注意。对数据类型的定义(显示声明)不仅可以让JavaScript明白如何使用这些数据,可以让JavaScript更有效率的处理数据,避免一些因为没有对数据类型进行声明而产生的没有意义甚至错误的操作。

4、JavaScript是ECMAScript、DOM、BOM的集合

  1、可以将JavaScript当做是ECMAScript、DOM、BOM的集合。
  2、ECMAScript并不依赖于浏览器,这门语言并不包含输入和输出定义。其规定了这门语言的如下内容:语法、类型、语句、关键字、保留字、操作符、对象。ECMAScript就是对实现该标准的各个方面内容的语言描述,JavaScript实现了ECMAScript。
  3、DOM将一个HTML页面解析成一个节点树,HTML页面的每一个部分都是这个节点树的某种类型的节点,这些节点又包含着不同类型的数据。通过DOM创建的这个表示文档的属性图,开发人员获得了控制页面内容和结构的主动权,借助DOM提供的API,开发人员可以轻松自如地删除,添加,替换或修改任何节点。
  4、BOM只处理浏览器窗口和框架,但人们习惯上也把说有针对浏览器的JavaScript扩展算作BOM的一部分。开发人员使用BOM可以控制浏览器显示的页面以外的部分。
扩展:弹出新浏览器窗口的功能;移动、缩放和关闭浏览器窗口的功能;提供浏览器详细信息的navigator对象;提供浏览器所加载页面的详细信息的location对象;提供用户显示器分辨率详细信息的screen对象;对cookie的支持;像XMLHttpRequest 和 IE的ActiveXObject这样的自定义对象。
BOM没有标准可遵循,每个浏览器都有自己的实现,但现在HTML5的出现,让这些规范愈加的完善。

5、JavaScript不太让人接受的原因

  1、可用性差,早期的浏览器彼此很少兼容,如果想让自己编写出来的JavaScript脚本在多种浏览器环境里运行,就必须编写许多用来探测浏览器的具体品牌和具体版本的测试及分支代码(术语称之为“浏览器嗅探”代码)。这样的脚本往往到处是if...else语句,既不容易阅读,又不容易复查和纠错,更难以做到让同一个脚本适用于所有的浏览器。
  2、对广大网民来说,JavaScript网页的可访问性很差——浏览器会是不是地弹出一个报错窗口甚至导致系统死机,让人乘兴而来、败兴而归。
  3、JavaScript被很多网站用来实现广告窗口的功能,人们厌烦这样的广告,也就“恨”屋及屋地厌烦起JavaScript来了。
  4、JavaScript让人以为其根源于Java语言,但接触之后就会发现他们根本没有任何联系。与Java相比,JavaScript语言要简单的多。

6、JavaScript的发展历史

  1、JavaScript是由NetScape公司和Sun公司合作开发的,在JavaScript出现之前,Web浏览器不过是一种能够显示超文本文档的软件的基本部分。而在JavaScript出现之后,网页的内容不再局限于枯燥的文本,他们的可交互性得到了显著的改善。JavaScript的第一个版本,即JavaScript1.0版本,出现在1995年推出的Netscape Navigator 2浏览器中。
  2、在JavaScript1.0发布时,Nerscape Navigator主宰着浏览器市场,微软的IE浏览器则扮演着追赶者的角色。微软在推出IE3的时候发布了自己的VBScript语言并以Jscript为名发布了JavaScript的而一个版本,以此很快跟上了Netscape的步伐。
  3、面对微软公司的竞争,Nerscape和Sun公司联合ECMA(欧洲计算机制造商协会)对JavaScript语言进行了标准化。其结果就是ECMAScript语言,这使得同一种语言又多了一个名字。虽说ECMAScript这个名字并没有流行开来,但人们现在谈论的JavaScript实际上就是ECMAScript。
  4、JavaScript是一种脚本语言,JavaScript脚本通常只能通过Web浏览器去完成某种操作而不是像普通意义上的程序那样可以独立运行。因为需要由web浏览器进行解释和执行,所以JavaScript脚本不像Java和C++等编译型程序设计语言那样用途广泛。不过,这种相对简单性也正是JavaScript的长处。
  5、JavaScript还向程序员提供了一种操控Web浏览器的手短。例如,JavaScript语言可以用来调节Web浏览器窗口的高度、宽度和屏显位置等属性。以这种办法给出Web浏览器本身的属性可以看做是BOM(浏览器对象模型)。JavaScript的早起版还提供了一种初级的DOM(文档对象模型)

7、JavaScript与JAVA的区别

  1、 JS是Netscape公司的产品,Java是Sun公司的产品。
  2、JS是基于对象,Java是面向对象。
  3、 JS只需解释就可以执行,Java需要先编译成字节码文件,再执行。
  4、JS是弱类型,Java是强类型。
  5、 java中声明变量的时候必须要明确该变量的数据类型。
  6、 javascript声明变量不需要明确是何种数据类型,任何的变量都是使用一个关键字var去声明即可

8、简单的JavaScript例子

<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>体验JavaScript语言</title>
</head>
<body>
<h1>体验JavaScript语言</h1>
<script type="text/javascript">
window.document.write("hello,world");
</script>
</body>
</html>

  

关于JavaScript概念的总结的更多相关文章

  1. Node.js新手必须知道的4个JavaScript概念

    如果只需要知道一种编程语言就可以构建一个全栈的应用程序,是不是特别了不起?Ryan Dahl为了把这个想法成为现实,创造了node.js.Node.js是建立在Chrome强劲的V8 JavaScri ...

  2. JavaScript概念梳理

    一.JavaScript 的奇葩命名史 1995 年,网景浏览器(Netscape Navigator)首次发布了一种运行于浏览器端的脚本语言,网景给这个新语言命名为 LiveScript.一年后,为 ...

  3. JavaScript概念总结:作用域、闭包、对象与原型链

    1 JavaScript变量作用域 1.1 函数作用域 没有块作用域:即作用域不是以{}包围的,其作用域完成由函数来决定,因而if /for等语句中的花括号不是独立的作用域. 如前述,JS的在函数中定 ...

  4. Javascript概念

    什么是JavaScript? 1 以前的目的:验证表单输入的正确性. 2 现在的目的:多做一些页面的交互效果. 3 javascript是一个跨平台的脚本语言. 4 网景公司开发的,由布兰登·艾奇最先 ...

  5. JavaScript概念之screen/client/offset/scroll/inner/avail的width/left 分类: JavaScript HTML+CSS 2015-05-27 16:42 635人阅读 评论(0) 收藏

    原文地址:http://caibaojian.com/js-name.html JS中获取各种宽度和距离,常常让我们混淆,各种浏览器的不兼容让我们很头疼,现在就在说说js中有哪些宽度和距离. 1.名词 ...

  6. JavaScript基础知识(概念、常量和变量)

    1.JavaScript概念 JavaScript是脚本语言; 编写之后,可以直接运行(缺失了编译的过程) 2.JavaScript发展 LiveScript    =>    JavaScri ...

  7. JavaScript开发者应懂的33个概念

    简介 这个项目是为了帮助开发者掌握 JavaScript 概念而创立的.它不是必备,但在未来学习(JavaScript)中,可以作为一篇指南. 本篇文章是参照 @leonardomso 创立,英文版项 ...

  8. JavaScript基本概念

    JavaScript概念:JavaScript是一个弱类型语言,而且不要进行编译,是解释性语言.JavaScript最初是为了处理一些相较简单的数据验证,从而减少客户端与服务器端的通信提升效率,发展至 ...

  9. 每个JavaScript工程师都应懂的33个概念

    摘要: 基础很重要啊! 原文:33 concepts every JavaScript developer should know 译文:每个 JavaScript 工程师都应懂的33个概念 作者:s ...

随机推荐

  1. C# 将引用的DLL文件放到指定的目录下

    原文:C# 将引用的DLL文件放到指定的目录下 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/sweety820/article/details/2 ...

  2. aop 中joinpoint的使用方法

    一.簡述下joinpoint在不同情況下的不同: 1.在around中可以用,此時可以執行被包裹的代碼,可以根據情況來判斷是否執行被包裹的代碼,以實現控制的作用. public void around ...

  3. new不抛出异常nothrow与new_handler

    可以看这里: http://blog.csdn.net/huyiyang2010/article/details/5984987 现在的new是会抛出异常的,bad::alloc 如果不想抛出异常两种 ...

  4. PHP 实现断点续传的原理和方法

    PHP 实现断点续传的原理和方法 0. http协议从1.1开始支持静态获取文件的部分内容,为多线程下载和断点续传提供了技术支持.它通过在Header里两个参数实现的,客户端发请求时对应的是Accep ...

  5. 求第k大的数(用到快速排序算法的思想)

    //下面两种part效率比较:相同运算量下part比part2快5倍左右,part2写法简单但是效率低 #include "stdafx.h" #include <iostr ...

  6. iOS 友盟分享

    iOS 友盟分享 这个主要是提到怎样通过友盟去自己定义分享的步骤: 一.肯定要去友盟官网下载最新的SDK包,然后将SDK导入到你的project目录里面去. 二.注冊友盟账号.将你的APP加入到你的账 ...

  7. Light OJ 1373 Strongly Connected Chemicals 二分匹配最大独立集

    m种阳离子 n种阴离子 然后一个m*n的矩阵 第i行第j列为1代表第i种阴离子和第j种阴离子相互吸引 0表示排斥 求在阳离子和阴离子都至少有一种的情况下 最多存在多少种离子能够共存 阴阳离子都至少须要 ...

  8. ProgressBar-style属性分析

    首先我们看下framework下关于进度条的style定义,如下 <style name="Widget.ProgressBar"> <item name=&qu ...

  9. Android 撕衣服(刮刮乐游戏)

    项目简单介绍: 该项目为撕衣服,相似刮刮乐游戏 具体介绍: 用户启动项目后.载入一张图片,当用户点击图片的时候,点击的一片区域就会消失.从而显示出在这张图片以下的图片 这个小游戏相似与刮奖一样,刮开涂 ...

  10. Zookeeper源码用ant进行编译为eclipse工程--转载

    原文地址:http://www.it165.net/os/html/201411/10142.html Zookeeper GitHub的下载地址是:https://github.com/apache ...