术语解释

Javascript是一种由Netscape的LiveScript发展而来的原型化继承的面向对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如Perl,遗留的速度问题,为客户提供更流畅的浏览效果。当时服务端需要对数据进行验证,由于网络速度相当缓慢,只有28.8kbps,验证步骤浪费的时间太多。于是Netscape的浏览器Navigator加入了Javascript,提供了数据验证的基本功能。

JavaScript 被用来改进设计、验证表单、检测浏览器、创建cookies,等等。JavaScript 是因特网上最流行的脚本语言,并且可在所有主要的浏览器中运行,比方说 Internet Explorer、 Maxthon、Mozilla、Firefox、Netscape、Chrome和 Opera等。

  • JavaScript 被设计用来向 HTML 页面添加交互行为。
  • JavaScript 是一种脚本语言(脚本语言是一种轻量级的编程语言)。
  • JavaScript 由数行可执行计算机代码组成。
  • JavaScript 通常被直接嵌入 HTML 页面。
  • JavaScript 是一种解释性语言(就是说,代码执行不进行预编译)。
  • 所有的人无需购买许可证均可使用 JavaScript。

概念辨析 

JavaScript与Java

JavaScript最初的确是受Java启发而开始设计的,而且设计的目的之一就是“看上去像Java”,因此语法上有很多类似之处,许多名称和命名规范也借自Java。但是实际上,JavaScript的主要设计原则源自Self和Scheme,它与Java本质上是不同的。它与Java名称上的近似,是当时网景为了营销考虑与Sun公司达成协议的结果。其实从本质上讲javascript更像是一门函数式编程语言.而非面向对象的语言,它使用一些智能的语法和语义来仿真高度复杂的行为。其对象模型极为灵活、开放和强大,具有全部的反射性。

JavaScript与JScript

JScript是Microsoft公司开发的,Javascript是Netscape公司开发的.虽然他们是死对头,但是在现在的浏览器中,无论你把语言指定为Javascript 还是 Jscript, 浏览器都会综合他们两个语言的特性.所以,即使把语言指定为Javascript, 用几句JScript也是没问题的.

JavaScript与VBScript

Javascript 和 VBscript 的互通性很好,而且在 VBArray(Javascript不支持多维数组)和ASCII(Javascript不能吧字符转成ASCII)都得到了应用,这方面基础 VBScript 做得很好。所以我看了看它的代码,大致意思就是 Javascript 可以用 VBScript 的自定义函数和变量(当然不能用内置变量和函数),通过转换调用内置函数。

JavaScript与AJAX

AJAX即“Asynchronous JavaScript and XML”(异步JavaScript和XML),它也是一种JavaScript编程语言。JavaScript是一种粘合剂使AJAX应用的各部分集成在一起。AJAX是基于web标准XHTML+CSS的表示;使用 DOM进行动态显示及交互;使用XML 和XSLT 进行数据交换及相关操作;使用XMLHttpRequest 进行异步数据查询、检索;使用 JavaScript 将所有的东西绑定在一起。

JavaScript与DOM

DOM是Document Object Model(文档对象模型)的简称,它是让javascript与页面交互的一种方式,能够动态修改文档中的节点,元素,属性等。DOM不仅适用于xhtml文档,对于所有的xml文档dom都是可以使用的。

DOM的级别:

1级:基本的节点操作一级里都包括了

2级:增加了对样式表,文档显示,事件处理,等的支持

3级:可以用javascript加载和保存文档,检查文档错误

JavaScript与HTML

HTML 创作者往往都不是程序员,但是 JavaScript 却是一种只拥有极其简单的语法的脚本语言。每人都可将短小的代码片断放入HTML 页面中。

类似于这样的一段 JavaScript 声明可以将一段可变的文本放入 HTML 页面:document.write("<h1>" + name + "</h1>")

可以将 JavaScript 设置为当某事件发生时才会被执行,例如页面载入完成或者当用户点击某个 HTML 元素时。

JavaScript 可以读取及改变 HTML 元素的内容。

在数据被提交到服务器之前,JavaScript 可被用来验证这些数据。

JavaScript 可被用来检测访问者的浏览器,并根据所检测到的浏览器,为这个浏览器载入相应的页面。

JavaScript 可被用来存储和取回位于访问者的计算机中的信息。

JavaScript与CSS+DIV

CSS(Cascading Style Sheet)层叠样式表,是一组格式设置规则,用于控制Web页面的外观。通过使用CSS样式设置页面的格式,可将页面的内容与表现形式分离。

DIV主要用来布局,与table布局相似,用来为HTML文档内大块(block-level)的内容提供结构和背景的元素。DIV的起始标签和结束标签之间的所有内容都是用来构成这个块的,其中所包含元素的特性由DIV标签的属性来控制,或者是通过使用样式表格式化这个块来进行控制。

JavaScript可以通过getElementById(id)或getElementsByTabName(TabName)等来设置或修改CSS和DIV的属性值

JavaScript与编程语言

Javascript 不是一个预编译语言,所以虽然 Javascript 的作者尽量把它写得强大。尽管JavaScript作为给非程序人员的脚本语言,而非作为给程序人员的编程语言来推广和宣传,但是JavaScript是一门具有非常丰富特性的语言,它有着和其他编程语言一样的复杂性,或更甚复杂。实际上,你必需对JavaScript有扎实的理解才能用它来撰写比较复杂的程序。

基本语法

1、运算符

运算符就是完成操作的一系列符号:

赋值运算符(=,+=,-=,*=,/=,%=,<<=,>>=,|=,&=)

算术运算符(+,-,*,/,++,--,%)

比较运算符(>,<,<=,>=,==,===,!=,!==)

逻辑运算符(||,&&,!)、条件运算(?:)、位移运算符(|,&,<<,>>,~,^)、字符串运算符(+)

2、 表达式

运算符和操作数的组合称为表达式,通常分为四类:赋值表达式、算术表达式、布尔表达式和字符串表达式

3、语句

赋值语句、switch、for、foreach、while、do while、break、continue、try...catch、if语句、with语句、let语句

4、函数

函数是命名的语句段,这个语句段可以被当作一个整体来引用和执行:

1)函数由关键字function定义(也可由Function构造函数构造);

2)使用function关键字定义的函数在一个作用域内是可以在任意处调用的(包括定义函数的语句前);而用var关键字定义的必须定义后才能被调用;

3)函数名是调用函数时引用的名称,它对大小写是敏感的,调用函数时不可写错函数名;

4)参数表示传递给函数使用或操作的值,它可以是常量,也可以是变量,也可以是函数,在函数内部可以通arguments对象(arguments对象是一个伪数组,属性callee引用被调用的函数)访问所有参数;

5)return语句用于返回表达式的值。

6)yield语句扔出一个表达式,并且中断函数执行直到下一次调用next。

一般的函数都是以下格式:

  function myFunction(params){

  //执行的语句

  }

  函数表达式:

  var myFunction=function(params){

  //执行的语句

  }

myFunction();//调用函数

5、对象

Javascript是面向对象的,通过基于对象的程序设计,可以用更直观、模块化和可重复使用的方式进行程序开发。

一组包含数据的属性和对属性中包含数据进行操作的方法,称为对象。比如要设定网页的背景颜色,所针对的对象就是document,所用的属性名是bgcolor,如document.bgcolor="blue",就是表示使背景的颜色为蓝色。

6、事件

事件,用户与网页交互时产生的操作。

事件可以由用户引发、也可能是页面发生改变、甚至还有你看不见的事件(如Ajax的交互进度改变)。绝大部分事都由用户的动作所引发,如:用户按鼠标的按钮,就产生click事件,若鼠标的指针的链接上移动,就产生mouseover事件等等。在Javascript中,事件往往与事件处理程序配套使用。

而对事件的处理,W3C的方法是用addEventListener()函数,它有三个参数:事件、引发的函数、是否使用事件捕捉。为了安全性,建议将第三个参数始终设置为false;

传统的方法就是定义元素的on...事件,它就是W3C的方法中的事件参数前加一个“on”。而IE的事件模型使用attachEvent和dettachEvent对事件进行绑定和删除。javascript中事件还分捕获和冒泡两个阶段,但是传统绑定只支持冒泡事件。

7、变量

如   var myVariable = "some value";

  变量有它的类型,上例中myVariable的类型为string(字符串)

  javascript支持的常用类型还有:

  object:对象

  array:数组

  number:数;

  boolean:布尔值,只有true和false两个值,是所有类型中占用内存最少的;

  null:一个空值,唯一的值是null;

  undefined:没有定义和赋值的变量

  实际上javascript的变量是弱变量类型,你赋值给他的是字符串,他就是String .

  是数字他就是整形。是true和false他就是boolean型(注意,不能加引号,不然会被当成字符串处理)。

开发与调试

javascript程序是纯文本的,且不需要编译,所以任何纯文本的编辑器都可以编辑javascript文件

开发工具

JavaScript Editor (推荐)

Dreamweaver CS4

Visual Studio 2008

调试工具

Firefox FireBug (推荐)

JavaScript Editor

Visual Studio 2008

根据我自己的学习、开发和调试JavaScript的经验和体会,推荐开发使用JavaScript Editor和调试使用Firefox FireBug

当然啦,牛人直接用NotePad或VIM等文本工具直接编写,也可以的,不过我目前还远远没达到这种水平(努力的目标)

Javascrip基础的更多相关文章

  1. JavaScrip 基础

    JavaScript 基础 前段的三剑客之一JS,来来来,看看它是什么鬼!到底如何让网页动起来的呢,今天就搞他一下. 一.JavaScript的简单介绍 javascript是一门动态弱类型的解释型编 ...

  2. JavaScrip基础讲座 - 神奇的ProtoType

    1. 什么是 prototype  prototype 对于 JavaScript 的 意义重大,prototype 不仅仅是一种管理对象继承的机制,更是一种出色的设计思想 在现实生活中,我们常常说, ...

  3. javascrip基础学习

    JS是一种解释性脚本语言,在网页开发用经常用到(HTML CSS),用于控制网页的行为.现在RTT的柿饼UI也是用JS来开发的,所以很有必要学习一下. 注释:// ./*  */ 语句分行: 折行\ ...

  4. python_day13_js

    JavaScript 基础 目录: javascript简介 javascrip历史 ecmascript标准 javascrip基础 js引入方式 js变量.常量.标识符 js数据类型 运算符 流程 ...

  5. JavaScrip(二)JavaScrip语法基础

    一:标识符 标识符是指变量,函数的名字,或函数的参数名: 1.命名规则 1.1第一个字符必须是一个字母.下划线(_).或一个美元符号($) 1.2其他字母可以是字母,下划线.美元符号或数字 1.3不能 ...

  6. javascrip学习之基础

    弹窗信息:三种消息框:警告框.确认框.提示框. window.alert("sometext"); var r=confirm("按下按钮");//提示信息,返 ...

  7. Javascript基础回顾 之(三) 面向对象

    本来是要继续由浅入深表达式系列最后一篇的,但是最近团队突然就忙起来了,从来没有过的忙!不过喜欢表达式的朋友请放心,已经在写了:) 在工作当中发现大家对Javascript的一些基本原理普遍存在这里或者 ...

  8. C#基础01

    ASP.net基础详情 1:Momo就是跨平台的一种.net,借助其Momo可以让其.net网站跑到Lumin和安卓机上面. 2:开发的网站具有安全,速度快,容易配置. 3:互联网开发[网站]和管理系 ...

  9. JavaScript基础(一)

    我是一个初学者,但求能学到些许知识!以下是根据韩顺平老师的<轻松搞定网页设计html+css+javascript—javascrip部分>整理而成. 为什么要学习javascript? ...

随机推荐

  1. 【Alpha】项目展示

    团队成员介绍 大娃 后端开发人员,主要工作为后端开发,文档撰写. 大娃的个人博客 二娃 PM,主要工作为项目进度把控,平日例会的记录,例会博客及部分其他博客的撰写. 二娃的个人博客 三娃 PM,主要工 ...

  2. https://www.cnblogs.com/h2zZhou/p/5440271.html

    https://www.cnblogs.com/h2zZhou/p/5440271.html

  3. Apache强制WWW跳转以及强制HTTPS加密跳转的方法

    一般我会较多的使用WORDPRESS程序,其在安装的时候我们如果直接用WWW打开,或者在后台设置WWW域名则默认会强制301指向WWW站点域名.而这里有使用ZBLOG或者TYPECHO等其他博客程序则 ...

  4. centos7 下zookeeper 部署 单机多实例模式

    centos7 下zookeeper 部署 本文参考https://www.linuxidc.com/Linux/2016-09/135052.htm 1.创建/usr/local/zookeeper ...

  5. NLog使用整理

    NLog使用中碰到的问题整理 1,日志写mysql数据库报错, 原因: 在sql语句中使用了mysql的函数now() 导致插入失败, 解决办法: 使用参数代替now(). 在nlog配置文件中设置  ...

  6. dapper.simplecurd

    [Table("Users")]//真实表名 publicclass User { [Key] publicint UserId { get; set; } [Column(&qu ...

  7. Java冒泡法和二分法

    最近去一家公司面试,手贱在人家CTO面前自告奋勇写了一把冒泡法,结果在交换数据的时候出了洋相,回家反思,写下如下代码,对自己算是一个鞭策,得到的教训是不要眼高手低,低调前行. package com. ...

  8. Linux:Fedora系统的安装

    新的一周,新的一天又来了!话不多说我们直接进入今天的系统安装吧!这次是Linux系统的第八期了,这款系统是可以当做家庭用途使用,非常强大的一款开发源操作系统. 安装Fedora系统 系统映像文件下载 ...

  9. 汉诺塔III

    题目描述: 约19世纪末,在欧州的商店中出售一种智力玩具,在一块铜板上有三根杆,最左边的杆上自上而下.由小到大顺序串着由64个圆盘构成的塔.目的是将最左边杆上的盘全部移到右边的杆上,条件是一次只能移动 ...

  10. Mysql 设置远程连接

    一.问题分析 有时候使用数据库远程连接工具连接MySQL的时候总是连接不上,确认过账号密码正确,端口telnet端口又是通的. Navicat Premium报错如下: 1130 - Host '19 ...