js定义动态对象属性名,jsp是动态还是静态

本篇文章给大家谈谈js定义动态对象属性名,以及jsp是动态还是静态,希望对各位有所帮助,不要忘了收藏本站喔。

1.01 JavaScript简介

  1. 什么是JavaScript?

JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,把静态页面变成支持用户交互并响应相应事件的动态页面python for语句用法。用来给HTML网页增加动态功能。

  • 在1995年时,由Netscape公司的Brendan Eich,在网景导航者浏览器上首次设计实现而成。因为Netscape与Sun合作,Netscape管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语法风格与Self及Scheme较为接近。

  • 为了取得技术优势,微软推出了JScript,CEnvi推出ScriptEase,与JavaScript同样可在浏览器上运行。目前几乎所有的主流浏览器都支持JavaScript。为了统一规格,因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。

  1. JavaScript可以做什么?

    (1)对表单数据进行验证;(java后台)
    操作HTML文档(如读取文档内容,动态写入文本);
    (2)对客户端事件进行响应;
    控制浏览器窗口(如打开新窗口,调整窗口大小等);
    (3)创建和读取Cookies;
    实现网页特效,提供更好的用户体验。

  2. JavaScript不可以做什么?

    (1)JavaScript不允许写服务器上的文件;
    (2)前端 js(基于面向对象) json/xml(nodeJs服务器端的JS) 前后端进行分离 用NodeJs做数据转换(JSON) java (对象)
    (3)全栈:js 移动端 前端 服务器端(nodeJs)
    (4)JavaScript不可以关闭不是由它自己打开的窗口;
    (5)JavaScript不能读取已经打开的其他窗口中的信息;

  3. JavaScript的基本特点

    (1)解释性—JavaScript不同于一些编译性的语言,如C、C++等,它是一种解释性的语言,它的源代码不需要经过编译,而是在浏览器中运行时被解释。(现在有一种新的说法叫即时编译)

    (2)基于对象—JavaScript是一种基与对象的语言,它内置了多种对象并允许用户自己创建对象。

    (3)事件驱动—JavaScript可以直接对用户的输入做出响应,无需经过Web服务程序,它对用户的响应,是以事件(如鼠标事件、键盘事件)驱动的方式进行的。

    (4)跨平台—JavaScript是一种跨平台的语言,它依赖于浏览器本身,与操作系统无关。只要计算机能运行浏览器,并且浏览器支持JavaScript就可执行。

  4. JavaScript的发展历史

  • 1995年,就职于Netscape(网景)公司的布兰登·艾奇着手为即将发布的Navigator 2开发一种脚本语言,命名为LiveScript。为了赶在发布日期前完成LiveScript的开发,Netscape与Sun公司建立了一个开发联盟。在Navigator 2正式发布前夕,为了搭上当时媒体热炒的Java的顺风车,Netscape临时把LiveScript改名为JavaScript。
  • 加入了JavaScript的Navigator 2浏览器在市场上取得了巨大成功,1996年,微软公司决定在IE 3.0中加入自己的脚本语言功能,它与Navigator 2中的JavaScript非常类似,但微软将其命名为JScript。
  • 微软推出J,这意味着有了两个不同版本的JavaScript:Navigator中的JavaScript和IE中的J。由于没有标准规定JavaScript的语法和特性,两个不同版本并存的局面暴露出各种问题,JavaScript的标准化被提上了议事日程。
  • 1997年,以JavaScript1.1为蓝本的建议被提交给了欧洲及技术制造商协会(ECMA),该协会指定39号技术委员会负责JavaScript的标准化工作。经过数月的努力,一种名为ECMAScript的脚本语言标准被定义完成,它被称为ECMA-262。 ES5(对javaScript进行规范)
  • ES6 es2015 es2016 es2017 es2018 可以在js 中写类
  • 全是JAVA的思想 nodejs用的全是ES6的语法 ES6支持ES5的严格模式.
  • 1998年,ISO/IEC(国际标准化组织和国际电工委员会)也采用了ECMAScript做为标准。自此以后,浏览器开发商就开始致力于将ECMAScript做为各自JavaScript实现的基础。
  1. JavaScript的构成

    一个完整的JavaScript实现由几部分组成:

  • 核心(ECMAScript)
  • 文档对象模型(DOM)为了读写文件提供了一个接口 xml
  • html js
  • 浏览器对象模型(BOM)window->document/history/screen

在这里插入图片描述

  • ECMAScript

    它规定了JavaScript这门语言的一些组成部分:语法、类型、语句、关键字、保留字、操作符、对象。它与WEB浏览器之间没有依赖关系。实际上,这门语言本身并不包含输入和输出定义。ECMA-262只定义这门语言的基础,而在此基础之上可以构件更完善的脚本语言。常见的web浏览器只是ECMAScript实现可能的宿主环境之一。宿主环境不仅提供基本的ECMAScript实现,同时也会提供该语言的扩展,以便语言与环境之间的对接交互。而这些扩展——如DOM,则利用EMAScript的核心类型和语法提供更多更具体的功能,以便实现针对环境的操作,其他的宿主环境包括Node(一种服务器端java平台)和Adobe Flash

    ECMA-262标准没有参照web浏览器,它规定了这门语言的下列如下组成部分:

       语法
       类型
       关键字
       保留字
       操作符
       对象
    

ECMAScript就是对实现标准规定的各个方面内容的语言的描述。JavaScript实现了ECMAScript,Adobe ActionScript同样也实现了ECMAScript. flex开发 vb

ECMAScript的版本:

 ECMAScript的不同版本又称为版次,以第X版表示(意即描述特定实现的ECMA-262规
范的第X个版本)ECMA-262的2009版称为ES5  2015版称为 ES6又称为 ES2015

ECMAScript兼容:

支持ECMA-262描述的所有“类型、值、对象、函数以及程序句法及语法”

支持Unicode字符标准。

  • DOM-文档对象模型(DOM Document Object Model)

是针对XML但经过扩展用于HTML的应用程序编程接口。
DOM把整个页面映射为一个多层节点结构。HTML 或XML页面中的每个组成部分都是某种类型的节点,这些节点有包含着不同类型数据 。

1>为什么要使用DOM

  在IE4和 Netscape Navigator 4分别支持不同类型的DHTML基础上,开发人员无需重新加载网页,就可以修改其外观和内容了。然而,DHTML在web技术发展带来巨大进步的同时,也带来了巨大的问题。由于Netscape和微软在开发DHTML方面各抒己见,过去那个只编写一个HTML页面就能够在任何浏览器中运行的时代结束了。
  
 对开发人员而言,如果想继续保持web跨平台的天性,就必须额外多做一些工作,而人们真正担心的是,如果不对NetScape和微软加以控制,Web开发领域就会出现技术上两强割据,浏览器互不兼容的局面。


此时,负责制定web标准的W3C(World Wide Web Consortium 万维网联盟)开始着手规划DOM.

2> DOM级别

 1) DOM1级(DOM Level 1)于1998年10成为W3C推荐标准。
 
 DOM1级由两个模块组成:DOM核心(DOM core)和DOM HTML 。
 
 	 其中,DOM核心规定的是如何映射基于XML的文档结构,以便简化对文档中任意部
 	分的访问和操作。DOM HTML 模块则在DOM核心的基础上加以扩展,添加了针对
 	HTML的对象和方法。
 
DOM并不是针对Java的,很多别的语言也都实现了DOM。

在web浏览器中,基于ECMAScript实现的DOM的确已经成为了JavaScript这门语言的一个重要组成部分。

2)DOM2级在原来DOM的基础上又扩充了鼠标和用户界面事件、范围、遍历(迭代DOM文档的方法)等细分模块,而且通过对象接口增加了对CSS(Cascading style sheets )的支持。


 DOM2级引入了下列新模块,也给出了众多新类型和新接口的定义:
 
	DOM视图(DOM views)定义跟踪不同文档视图的接口
	DOM事件(DOM Event)定义了事件和事件处理的接口
	DOM样式(DOM Style)定义了基于CSS为元素应用样式的接口
	DOM遍历和范围(DOM Traversal and range)定义了遍历和操作文档数的接口。
	
3)DOM3级则进一步扩展了DOM,引入了以统一方式加载和保存文档的方法—在DOM加载和保存(DOMLoad and Save)模块中定义,新增了验证文档的方法——在DOM验证(DOM Validate)模块中定义。

3>其他DOM标准

除了DOM核心和DOM HTML 接口之外,另外几种语言还发布了只针对自己的DOM标准。下面列出的语言都是基于XML的,


每种语言的DOM标准都添加了与特定语言相关的新方法和新接口

	SVG(Scalable Vector Graphic 可伸缩矢量图)
	MathML(Mathematical Markup Language 数学标记语言)
	SMIL(Synchronized Multimedia Integration Language)同步多媒体集成语言。


实例代码:

在这里插入图片描述
在这里插入图片描述
DOM通过创建树来表示文档,从而使开发者对文档的内容和结构具有空前的控制力。用DOM API可以轻松地删除、添加和替换节点。

  • BOM(Browser Object Model)-浏览器对象模型

    可以对浏览器窗口进行访问和操作,由于没有相关的BOM标准,每种浏览器都有自己的BOM实现。这个问题在HTML5中得到了解决,HTML5致力于把很多BOM功能写入正式规范。

    BOM只处理浏览器窗口和框架,习惯上把所有针对浏览器的Java扩展算作BOM的一部分。

    主要实现:

    1、弹出新窗口(window.open())
    2、移动、缩放和关闭浏览器窗口
    3、提供浏览器详细信息(navigator)
    4、对Cookie的支持
    
  1. JavaScript的开发工具
  • JavaScript中可以使用的开发工具主要有两大类,一类是基本的文本编辑工具,一类是专业可视化开发工具。

    (1)文本编辑工具:UltraEdit、EditPlus、Notepad++、记事本…
    (2)可视化的集成开发工具:Dreamweaver、NetBeans…
    在这里插入图片描述
    在这里插入图片描述

  • 调试JavaScript脚本

    Firefox中Firebug一款功能强大的JavaScript脚本调试器,它不仅可以调试JavaScript脚本,还具备了DOM查看、CSS可视化查看、HTTP监控等多种功能。
    在这里插入图片描述

  1. 在HTML中使用JavaScript
  • 编写第一个JavaScript程序
    在这里插入图片描述
    元素:

    HTML4.01 为< >定义了下列6个属性:

    (1)async:可选 表示应该立即下载脚本,但不应妨碍页面中的其他操作,比如下载其他资源或等待加载其他脚本,只对外部脚本文件有效。
    (2)charset:可选,表示通过src属性指定的代码的字符集。由于大多数浏览器会忽略它的值,因此这个属性很少有人用。
    (3)defer:可选,表示脚本可以延迟到文档完全被解析和显示之后再执行。只对外部脚本文件有效。html5
    (4)language:已废弃 原来用于表示编写代码使用的脚本语言(如:Java,JavaScript2.1 或VBScript)大多数浏览器会忽略这个属性,因此也没有必要使用了。
    (5)src:可选 表示包含要执行代码的外部文件。
    (6)type:可选 可以看成是language的替代属性;表示编写代码使用的脚本语言的内容类型(也被称为MIME类型)虽然text/javascrpt 和 text/ecm都已经不被推荐使用了,但人们一直以来使用的都还是 text/java.实际上,服务器在传送Java文件时使用的MIME类型通常是application/x-java.如果没有指定这个属性,则其默认值仍为text/java.

使用元素的方式有两种:

直接在页面中嵌入JavaScript代码
包含外部Java文件。

的位置:

传统的做法,所有标签都应该放在页面的head元素中。
 这种做法的目的就是把所有外部文件(包括CSS文件和JavaScript文件)的引用都放在相
同的地方。可是在文档的head元素中包含所有JavaScript文件,意味着必须等到全部
JavaScript代码都被下载解析和执行完成以后,才能开始呈现页面的内容(浏览器在遇
到body标签时才开始呈现内容)。对于那些需要很多java代码的页面来说,这无
疑会导致浏览器在呈现页面时出现明显的延迟,而延迟期间的浏览器窗口将是一片空白。
 为了避免这一问题,现代Web应用程序一般都把全部java引入引用放在body元
素中页面内容的后面。

延迟脚本:

HTML4.01的属性这个属性的用途是表明脚本在执行时不会影响页面的构造。脚本会被延迟到整个页面都解析完毕后再运行。延迟脚本也最好放在页面的底部。

<  src="index.js" defer="defer">< />

异步脚本:

HTML5为元素定义了async属性。async只适用于外部脚本,并告诉浏览器立即下载文件。

 <  src="index.js" async>< />

嵌入代码与外部文件:

在HTML中嵌入java代码虽然没有问题,但一般认为最好的办法还是尽可能使用外部文件来包含外部java代码。使用外部文件有如下优点:

1)可维护性:遍及不同HTML页面的java会造成维护问题,但把所有java
文件都放在一个文件夹中,维护起来就轻松多了。而且开发人员也能够在不触及HTML标记
的情况下,集中精力编辑java代码。
2)可缓存:浏览器能够根据具体的设置缓存链接的所有外部Java文件。如果有两
个页面都使用同一个文件,那个这个文件只需下载一次。
3)面向未来:可以是适用于HTML的各个版本。(HTML4.01,XHTML、HTML5)

< >元素

在HTML页面中插入JavaScript的方法就是使用< >元素。具体形式:

在这里插入图片描述
1> < >元素在HTML页面中的放置位置

传统的做法是将< >元素放在页面的< head>元素中
实际使用中,既可以将它放在< head>元素中,也可以将它放在<body>元素中。 

2> 使用< >元素的方式

(1)直接在HTML页面中嵌入JavaScript代码
(2)包含外部JavaScript文件

3> 外部脚本的位置

 将JavaScript脚本放在文档的< head>元素中,意味着必须等到全部JavaScript代
码被下载、解析、和执行完成以后,才能开始呈现页面的内容。对于那些需要很多
JavaScript代码的页面来说,这无疑会导致浏览器呈现页面时出现明显的延迟,而延迟
期间的浏览器窗口将是一片空白。为了避免这个问题,Web应用程序可以把全部
JavaScript脚本放在< body>元素页面内容的后面。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值