位置: 编程技术 - 正文

JavaScript的目的分析(javascript的主要功能)

编辑:rootadmin
从今天起,我将陆续将 ppk on JavaScript 的读书心得发布到这个blog上。ppk是我所景仰的一位web开发者,原因无它,只是因为作为一个JavaScript的开发者来说,他涉及的领域包括web标准,可用性,无障碍等,正是其他开发者所不关注或者故意忽略的。并且,他写了很多案例测试不同的浏览器,总结出JavaScript的接口(API)兼容性,成为JavaScript开发者重要参考资料,几年如一日,这种钻研精神是很多人所缺乏的。 ppk在今年9月出版了他的书,我从去年起就在等的书。今天拿到手,迫不及待地把第一章阅读完毕。果然让人充满惊喜,他的功力非同一般。虽然只是一个初学者,但我认为我已经走在正确的学习道路上。我想,我若能将学习心得分享,能让正在学习的人看到,可以一起交流一起进步,尽管我不敢确保你能从我这里得到什么启发,但我可以确信,我这些笔记会比你拷贝粘贴代码的学习方式更正确。 这本书有十章,章名都简洁明了,分别是:目的,背景,浏览器,准备,核心,BOM, 事件,DOM, CSS更改和数据获取。从来没有一本书能如此简洁地明确JavaScript的方方面面,因此学习不会有太大负担。前言不宜过多,下面就开始我的第一章学习笔记。 开篇宗义:JavaScript的目的是,为网页增加特别的一层可用性。听起来很简单,但这条黄金定律经常被人误解。就算编写有用的JavaScript, 开发者可能还是没能结合适当的情景:Web标准运动发展下,与当代无障碍的HTML页面的配合。更为不妙的是,有些开发者不是为网页增加一层可用性,而是用整层取代之,后果是,如果浏览器不支持JavaScript, 网站就完了。 概念概述 JavaScript是一门由浏览器解释的脚本语言。它通过在客户端而不是服务器端处理某些交互,比如表单验证,创建新菜单来给网站增添可用性。传统的网页交互是,客户端的一举一动都必须经过服务器端的出来才能反馈回来,漫长的等待会让用户崩溃。而JavaScript可以在客户端代替服务器端做某些事情(最明显的,表单验证),从而提高用户体验。 随着时代的发展,JavaScript能够处理越来越多的交互。问题出现了,JavaScript能做这么多事情,到底要多用还是少用?这就有了富与瘦的对决。是整个页面都用JavaScript来控制交互还是只增加些许的JavaScript来增强可用性?就是说,尽可能地使用JavaScript还是有所节制,甚至不用? 瘦客户端很大程度上依赖于客户端-服务器的通讯,而富客户端尽可能限制额外的数据通讯。 哪种方式更好?尽管富客户端带来一些可用性益处,但瘦客户端可能是更“标准”的JavaScript用法。Web被认为是文档集合,而不是界面集合。最明显的证据是,浏览器有后退前进的功能让你在文档中跳转而界面会有么?浏览器可以收藏(书签)文档而界面可以么?从无障碍来说,瘦客户端也更少出错。 这种非平衡性是很难解决的。富客户端当然也可以在更高级的界面做到前进后退,或者收藏,也可以做到完美的无障碍。这必须需要大量的额外工作,但不是每个项目都有超出预算的时间或金钱。此外,太过专注于可用性而忽略无障碍也是一个问题。 那么JavaScript的目的是为富客户端还是瘦客户端服务?答案是:看情况。得看你的网站,你的受众,你的JavaScript水平。 技术概述 JavaScript分为六个方面,分别是核心(Core),浏览器对象模型(BOM),事件(Events),文档对象模型(DOM),CSS变更和数据获取(XMLHttpRequest)。 上古时代,NetScape领头之时,NetScape3是事实标准。 当代却没有这么简单。ECMA标准化JavaScript Core, W3C标准化DOM,而BOM尚在WHAT-WG的标准化中,W3C也刚有了XMLHttpRequest的第一份草稿。今天,BOM依然遵循NetScape3的事实标准,而XMLHttpRequest还是遵照Microsoft的原始规范。 JavaScript的目的在于为网站增加可用性,而不是破坏用户的隐私和安全。因此JavaScript不允许读写用户的文件(cookies除外),采取同源策略,只允许来自相同域的交互。不允许读取历史记录,不能为上传文件的表单设置值,由JavaScript控制的窗口关闭需经用户确认,由JavaScript打开的窗口不能小于×的窗口,不能移出屏幕之外。 JavaScript的历史 探寻历史才能让我们知道JavaScript为什么会被误解得如此深。JavaScript的创造者是Brendan Eich,首次在NetScape 2中实现。它的目的是创建一门足够简单的语言让开发者能容易地为网页增加交互,只要把代码拷贝过来调整一下就可以。这确实令人赞叹,很多JavaScript开发者是从拷贝粘贴开始的。 不幸的是JavaScript生错了名字,也生错了语法。最初它叫LiveScript,但年的时候Java炙手可热,NetScape想搭顺风车,于是某产品经理(我想知道她/他是谁,呵呵),命令更名,命令Brendan Eich让“Javascript像Java”。这让很多人误认为JavaScript是Java的低级版,不能引起严肃程序员的关注。 年之时,NetScape 3是王,Microsoft只能照抄。这是一个难得的和谐期,当然,那时候浏览器比起现在来“瘦”了,仅限于表单验证,鼠标轮换的一些小花招而已。 接下来就是影响深远的浏览器大战了。为了争夺市场,两家浏览器纷纷实现不同的东西,谁都想成为事实标准。最有名的就是NetScape 4的document.layer和IE 4的document.all(忘记它们吧!)。它们让DHTML流行起来。 年Microsoft以推出良好支持CSS和DOM的IE5胜出,NetScape的让位终于有足够的时间让一场革命发生,那就是CSS。WaSP首先从CSS入手,而很多专家也发现/发明了许多浏览器的补救办法,让这场革命成为可能。 年,一些先锋们在CSS革命的影响下开始探索新的JavaScript风格,更多地关注无障碍,改观人们对它的坏名声,那就是unobstrusive——把JavaScript从HTML结构层分离出来,遗憾的是,那些在浏览器大战存活下来的程序员可能还没有发现这条新道路。 年,Ajax热潮为JavaScript社区注入新的血液。但某些方面,Ajax太像DHTML了,无障碍,是很多Ajax应用的难言之隐。这个热潮趋向于关注技术(如何Ajax),而可用性和交互(为何Ajax)却被低估。最后,各种肿胀的库(现在称为框架)迅速发展起来。 Ajax依然全速前进,但这会像DHTML一样结果,人们渐渐失去兴趣,它们会土崩瓦解。 JavaScript兴衰史好像有一定的“定律”支配,我们能打破这个怪圈吗?不管如何,JavaScript开发者在寻找各种酷代码和华而不实的框架之外,更应该调整自己的行动,让JavaScript运行在:标准兼容的,无障碍的网页中。

推荐整理分享JavaScript的目的分析(javascript的主要功能),希望有所帮助,仅作参考,欢迎阅读内容。

JavaScript的目的分析(javascript的主要功能)

文章相关热门搜索词:javascript的用处,javascript主要用来干嘛,javascript的主要功能,javascript干嘛用的,javascript概述及作用,javascript主要用来干嘛,javascript概述及作用,javascript的主要作用,内容如对您有帮助,希望把文章链接给更多的朋友!

JavaScript For Beginners(转载) 注:我对原文进行了编辑,对一些词汇标注颜色,方便阅读。本来准备翻译,但是觉得文章简单易懂,而且原文写得很好,所以就不献丑了。希望对JavaS

javascript中的对象和数组的应用技巧 javascript已经用了有三年多了,但是对一些细节的东西还是一知半解,比如对象和数组,一直都在用一些最基本的操作。这是我学习的一个坏习惯--懒,

Javascript标准DOM Range操作全集第1/3页 2级DOM定义了一个createRange()方法,如果是按照DOM此标准的浏览器(IE并不是支持此标准的,但是IE里的属性或方法却远比标准中定义的多得多),它属于do

标签: javascript的主要功能

本文链接地址:https://www.jiuchutong.com/biancheng/385691.html 转载请保留说明!

上一篇:对象的类型:本地对象(1)(对象类型怎么填)

下一篇:JavaScript For Beginners(转载)

  • 审核记账对账结果怎么写
  • 物业公司代收电费怎么开票
  • 注销公司账面余额要全部清零吗
  • 机械设备租赁印花税谁交
  • 即征即退免所得税吗
  • 长期股权投资如何审计
  • 事业单位支付方式
  • 存货的进项税要计入成本吗
  • 个人独资企业没有公司章程吗?
  • 企业所得税审计的内容包括哪四个方面
  • 印花税核定表申请
  • 上传失败显示网络不佳
  • 劳务费代驾计入什么科目?
  • 新个税法规定的专项扣除包括住房公积金
  • 增值税发票系统金税盘发票怎么抵扣
  • 降温费和取暖费标准
  • 应付款转收入条件
  • 代收水电费的会计分录
  • 承兑汇票贴单怎么贴
  • 进口商品的关税计入入账价值吗
  • 借老板的现金存入银行怎么做账?
  • 投标费用属于什么会计科目
  • 税务票开错了怎么办理退税
  • 出口汇兑损益的会计分录
  • 企业以盈余公积转增资本,会引起所有者权益总额的变动
  • win10开机内存占用60% 8g占用过高
  • 支付中间业务收入怎么算
  • 王者荣耀中李白第二次离开
  • UPUPW 更新 64 位 Apache 系列 PHP 7.0 正式版
  • 国家占耕地补偿款给谁?
  • 采用权益法核算
  • pascl32.exe - pascl32是什么进程 有什么用
  • php自定义函数的语法格式
  • php开发实战权威指南
  • 勾选确认发票后能撤销吗
  • 既简单又安全的小实验
  • pytorch自定义网络层
  • 企业转让专利权属于什么收入
  • 工业企业成本核算的一般程序包括下列的
  • 会计怎么实现财务自由
  • 在哪里验证增值税票
  • 长期待摊费用的账务处理
  • 新版电子税务局怎么增加办税人员
  • 年末计提哪些科目
  • 应交税费账户的用途和结构是怎样的
  • 加权平均发计算公式
  • 直接转销法还允许使用吗
  • 收到海关进口关税怎么办
  • 软件产品销售合同范本
  • 赠送客户的商品需要交税吗
  • 未开票收入转为开票收入
  • 其他公司归还借款分录
  • 年底结转损益后如何结转
  • 年平均资金占用额公式
  • 固定资产装修费用如果符合固定资产
  • 摊余成本计入哪里
  • 直接费用的定义
  • 保险公司的业务分为
  • sql优化的一般步骤
  • win7系统如何恢复桌面图标
  • centos crond
  • win8有几种版本
  • linux系统批量任务
  • win101607升级1909
  • pc guide
  • windows7如何取消锁屏密码
  • 旅游软件页面
  • border:none与border:0使用区别
  • bootstrap入门
  • unity3d asset store
  • jquery的筛选
  • js确认框选择取消时退出程序怎么设置
  • 有哪些推荐阅读的书
  • jq获取复选框选中的值
  • 供暖配套费
  • 济南个税起征点是多少2021
  • 伙食补助和伙食费
  • 盐城合作医疗在手机上怎么交
  • 计提消费税的会计分录讲解
  • 医保未参保怎么参保 支付宝
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设