Javascript 关于基本类型和引用类型的个人理解_javascript技巧

来源:脚本之家  责任编辑:小易  

是互联网的读者,你也应该是互联网的作者;你不该只是在互联网上冲浪,你本身就是波浪制造者。Web 2.0 之于Web 1.0,如同分布式计算之于集中式计算,网格之于大型主机。WEB2.0概念诠释Web2.0,是相对Web1.0(2003年以前的互联网模式)的新的一类互联网应用的统称,是一次从核心内容到外部应用的革命。由Web1.0单纯通过网络浏览器浏览html网页模式向内容更丰富、联系性更强、工具性更强的Web2.0互联网模式的发展已经成为互联网新的发展趋势。Web1.0到Web2.0的转变,具体的说,从模式上是单纯的“读”向“写”、“共同建设”发展;由被动地接收互联网信息向主动创造互联网信息迈进!从基本构成单元上,是由“网页”向“发表/记录的信息”发展;从工具上,是由互联网浏览器向各类浏览器、rss阅读器等内容发展;运行机制上,由“Client Server”向“Web Services”转变;作者由程序员等专业人士向全部普通用户发展;应用上由初级的“滑稽”的应用向全面大量应用发展。总之,Web2.0是以 Flickr、Craigslist、Linkedin、Tribes、Ryze、Friendster、Del.icio.us、43Things.com等网站为代表,以Blog、TAG、SNS、RSS、wiki等应用为核心,依据六度分隔、xml、ajax等新理论和技术实现的互联网新一代模式。应用:1、Blog(from wiki)历史:Blog一词本起源于 weblog,意思是网上日志。1997年由 Jorn Barger所提出。在1998年,infosift 的编辑Jesse J.Garrett(http://www.jjg.net),将一些类似blog的网站收集起来,寄给Cameron Barrett。Cameron随后将名单发布在CamWorld网站上,许多人亦陆续将blog的URL给Cameron,慢慢的,一个新的网络社区俨然成型。1999年,Brigitte Eaton(http://www.eatonweb.com)成立一个weblog 目录,收集她所知道的blog站。1999年,Peter Merholz(http://www.peterme.com)首次使用缩略词“blog”,成为今天常用的术语。但是,blog 真正开始快速发展的转折点,是在1999年6月,当时Pitas开始提供免费的weblog服务,紧接着8月,Pyra lab推出了现在的blogger.com。blogger.com 提供了简单易学的说明,以及能通过FTP直接将blog发表在个人网站上的功能,这带给使用者很大的方便。目前已经有了很多Blog托管服务商(BSP),业内人士对其盈利前景,持谨慎乐观态度。Blog的特点Blog是个人或群体以时间顺序所作的一种记录,并且不断更新。blog之间的交流主要是通过回溯引用(TrackBack)和回响/留言/评论(comment)的方式来进行的。blog的操作管理用语,也借鉴了大量档案管理用语。一个blog亦可被视为一个档案(archives),或是卷宗(fonds)。与传统档案不同的是,blog的写作者(blogger),既是这份档案的创作人(creator),也是其档案管理人(archivist)。Blog大量采用了RSS(Really Simple Syndication或者Rich Site Summary或者RDF Site Summary)技术,所有的RSS文件都必须符合由W3C发布的XML 1.0规范。对读者来说,可以通过RSS订阅一个blog,确知该blog作者最近的更新。对Blog作者来说,RSS可以使自己发布的文章易于被计算机程序理解并摘要。对知识管理和创造而言,blog提供了新的形态和途径。对汉语为母语的人而言,blog写作既接续了汉语笔记文学的优秀传统,更充分鼓励了个人表达。从交往形态考察,网志空间(blogosphere)设定了积极的读者、作者、编者互动转换关系,“言者互重,阅者相惜”。2、Tag(from blogbus)什么是Tag?Tag(标签)是一种更为灵活、有趣的日志分类方式,您可以为每篇日志添加一个或多个Tag(标签),然后您可以看到BlogBus上所有和您使用了相同Tag的日志,并且由此和其他用户产生更多的联系和沟通。不仅如此,我们还通过与Technorati的合作,把您的Tag发送到全球Blog空间,和全世界的人们共同分享。Tag体现了群体的力量,使得日志之间的相关性和用户之间的交互性大大增强,可以让您看到一个更加多样化的世界,一个关联度更大的Blog空间,一个热点实时播报的新闻台。Tag为您提供前所未有的网络新体验…当然,您也可以简单地把一个Tag(标签)理解为一个日志分类,但是Tag和分类的不同之处也很明显:首先,分类是您在写日志之前就定好的,而Tag是在您写完日志之后再添加的;其次,您可以同时为一篇日志贴上好几个Tag(标签),方便自己随时查找,而原先一篇日志只能有一个分类;再次,当您积累了一定数量的Tag之后,您可以看看自己在Blog中最经常写的是哪些话题;最后,您可以看到有哪些人和自己使用了一样的Tag(标签),进而找到和您志趣相投的Blogger。举一个例子,比如说:您写了一篇到西湖旅游的日志,原来您都是把这一类的日志放到自己的“驴行天下”分类下,但是有了Tag之后,您可以给这篇日志同时加上“旅游”、“杭州”、“西湖”、“驴行天下”等几个Tag,当浏览者点击其中任何一个Tag,他都可以看到您的这篇日志。同时您自己也可以通过点击这几个Tag,看看究竟有谁最近也去了杭州旅游,或许你们还可以交流一下旅游心得,成为下一次出游的伙伴呢!3、SNSSocial Network Service,社会性网络软件,依据六度理论,以认识朋友的朋友为基础,扩展自己的人脉。并且无限扩张自己的人脉,在需要的时候,可以随时获取一点,得到该人脉的帮助。SNS网站,就是依据六度理论建立的网站,帮你运营朋友圈的朋友。4、RSS(from wiki)RSS是一种用于共享新闻和其他Web内容的数据交换规范,起源于网景通讯公司的推"Push"技术,将订户订阅的内容传送给他们的通讯协同格式(Protocol)。RSS可以是以下三个解释的其中一个:Really Simple Syndication(真正简单的整合)RDF(Resource Description Framework)Site SummaryRich Site Summary(丰富站点摘要)但其实这三个解释都是指同一种Syndication的技术。目前RSS规范的主要版本有0.91、1.0和2.0。0.91版和1.0版完全不同,风格不同,制定标准的人也不同。0.91版和2.0版一脉相承。1.0版更靠拢XML标准。RSS目前广泛用于blog、wiki和网上新闻频道,世界多数知名新闻社网站都提供RSS订阅支持。5、Wiki(from wiki)Wiki一词源自夏威夷语的「wee kee wee kee」,本是「快点快点」之意。在这里Wiki指的是一种超文本系统。这种超文本系统系支持那些面向社群的协作式写作,同时也包括一组支持这种写作的辅助工具。有人认为,Wiki系统属于一种人类知识的网路系统,我们可以在Web的基础上对Wiki文本进行浏览、创建、更改,而且这种创建、更改、及发布的代价远比HTML文本小;与此同时Wiki系统还支持那些面向社群的协作式写作,为协作式写作提供了必要的帮助;最后,Wiki的写作者自然构成了一个社群,Wiki系统为这个社群提供了简单的交流工具。与其它超文本系统相比,Wiki有使用简便且开放的优点,所以Wiki系统可以帮助我们在一个社群内共用某个领域的知识。Wiki起源1995年沃德?坎宁安(Ward Cunningham)为了方便模式社群的交流创建了全世界第一个wiki系统-WikiWikiWeb,并用它建立了波特兰模式知识库(Portland Pattern Repository)。在建立这个系统的过程中,沃德?坎宁安创造了Wiki的概念和名称,并且实现了支持这些概念的服务系统。这个系统是最早的Wiki系统。从1996年至2000年间,波特兰模式知识库围绕著面向社群的协作式写作,不断发展出一些支持这种写作的辅助工具,从而使Wiki的概念不断得到丰富。同时Wiki的概念也得到了传播,出现了许多类似的网站和软件系统。Wiki的历史不长,无论是Wiki概念本身,还是相关软件系统的特性,都还在热烈的讨论中;所以怎样的一个站点才能称得上是一个Wiki系统还是有争议的。与Wiki相关新近出现的技术还有blog,它们都降低了超文本写作和发布的难度。这两者都是同内容管理系统密切相关的。Wiki的特点使用方便维护快捷:快速创建、存取、更改超文本页面(这也是为什么叫作"wiki wiki"的原因)。格式简单:用简单的格式标记来取代HTML 的复杂格式标记。(类似所见即所得的风格)链接方便:通过简单标记,直接以关键字名来建立链接(页面、外部连接、图像等)。命名平易:关键字名就是页面名称,并且被置于一个单层、平直的名空间中。可增长可增长:页面的链接目标可以尚未存在,通过点击链接,我们可以创建这些页面,从而使系统得以增长。修订历史:记录页面的修订历史,页面的各个版本都可以被获取。开放性开放的:社群内的成员可以任意创建、修改、或删除页面。可观察:系统内页面的变动可以被来访者清楚观察得到。由于Wiki的自组织,可增长以及可观察的特点,使Wiki本身也成为一个网路研究的对象。对Wiki的研究也许能够让人们对网路的认识更加深入理论和技术:1、六度关系理论目前流行的“六度分隔”理论是20世纪60年代由美国的心理学家米格兰姆(Stanley Milgram)提出的,这个理论可以通俗地阐述为:最多通过六个人你就能够认识任何一个陌生人。“六度分隔”成为人际关系世界中无可否认而又令人震惊的特征,许多社会学上的深入研究也给出令人信服的证据,说明这一特征不只是特例,在一般情形下也存在。最近,美国哥伦比亚大学社会学系的瓦茨教授领导的EMAIL试验也再次证明了这一人际关系世界中惊人的规律。然而,在现实世界中,六十亿人怎么可能真的构成如此紧密的相互关联呢?是互联网使一切成为现实。2、XmlXML即可扩展标记语言(eXtensible Markup Language)。标记是指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用象XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从SGML中简化修改出来的。它主要用到的有XML、XSL和XPath等。3、AJAXAjax并不是一种技术。它实际上是几种已经在各自领域大行其道技术的强强结合。Ajax混合了:基于XHTML/CSS由DOM(Document Object Model)实现动态显示与交互通过XML和XSLT进行数据交换及处理使用JavaScript整合上述技术直观一点的说Ajax能够实现不刷新浏览器窗口(当然更不用安装..www.zgxue.com防采集请勿采集本网。

 1.基础类型

1.网页的主体内容将写在(A)标签内部。A.<BODY>B.<HEAD>C.<HTML>D. 2.HTML中可以指定的最大字体size=(C)。A.1 B.7 C.36 D.12 3.超级链接主要可以分为文本链接、图像链接和(A)。A.

A. 基础类型有5种,Number,String,Boolean,Null,Undefined

项目经验 项目名称:NetStore网上购书系统 项目描述:该系统分为首页、用户管理、购物车管理、订单管理、退出5个模块。首页模块实现了模糊分页查询、分类分页查询等功能;用户管理模块实现了登录

B. 基础类型没有堆的概念,堆只针对引用类型。

1、掌握电子技术和计算机组成与体系结构的基本原理、分析方法和实验技能,能从事计算机硬件系统开发与设计。2、掌握程序设计语言、算法与数据结构、操作系统以及软件设计方法和工程的基本理论、

所有基础类型都是以key-value形式存放在栈中,其中,基础类型的值不可变,除非是重新赋值,

比如:

var a = "1234";a[0] = "k";//对值本身修改,无效console.log(a)//1234a = "k";//重新赋值console.log(a)//k

 2.引用类型

引用类型,如Array,Object,Function,Date,RegExp等

所有引用类型都是以key-value形式存放在栈中,其中,引用类型的key-value存放的value是指针地址,地址指向所在的堆的某个空间 ,这个空间存放着引用类型数据的值。

注意:

引用数据的值为 “堆值”,设堆值为value1 ,堆值对象内部的的key-value形式的value值为值中值 ,设此堆值为 “value2” ,在当前例子中,value1是可改变的,value2是不可改变的,除非是重新赋值。

比如:

// 堆值,即value1,可改变var a = {"name":"jack"};a = [];//重新赋值console.log(a)// [] // 堆值中值,即value2,与基本数据类型一样不可改变var a = {"name":"jack"};a.name[0] = "0";console.log(a)// {"name":"jack"}

3.传值与传址

如下图所示:

3.1 A代码块是传值

A代码块执行,a和b都会在栈区开辟一个空间用来存放值10,并且以key-value形式存放。A代码块是传值

3.2 B代码块是传址

B代码块执行,a1会开辟一个空间用来存放指针地址,然后a1的指针地址会赋值给b1,即b1同样会开辟一个空间用来放指针地址,而a1,b1指针地址指向的都是堆区的"堆值",即value1。

4.比较

4.1 基础类型的比较是值的比较

比如:

var a = 1;var b = 1;console.log(a == b);//true

4.2 引用类型的比较是引用的比较

同一个引用比较是可以相等,不同引用的比较不等。

比如:

//不同引用的比较var p1 = {};var p2 = {};console.log(p1 == p2) //false //不同引用的比较var p3 = {"name":{},"age":30};var p4 = {"name":{},"age":30};console.log(p3.name == p4.name);//false(这个是引用比较)console.log(p3.age == p4.age);//true(这个是值比较) //同引用的比较var p5 = {};var p6 = p5;console.log(p5 == p6)//true

如果引用被赋值别的类型,那么当前引用会被切断和值的指针地址。

如下图:

当a1重新赋值的时候,a1和 “ 堆值--> {} ” 的联系被替换成新的指针地址,即“ 堆值--> [] ”

好了这篇关于js 基本类型和引用类型的文章就介绍到这,更多请继续往下阅读相关文章。

1、html语言。首先必须要学这个,html语言又称为“超文本标记语言”,任何网页的显示都要靠html语言来表达,也是构成网页文档的主要语言。2、服务器架设。要制作网页就需要架设服务器来调试你做出来的网页,有iis等很多种,可以在网上搜索得到。3、css语言。css又作层叠样式表,css大部分是自动生成的,很难理解,需要学习基本的css知识,是步入高手的必经之路。css控制着网页图片、表格、文字等等内容在我们面前的显示样式,比如颜色,边框,大小等。css能够根据不同使用者的理解能力,简化或者优化写法,针对各类人群,有较强的易读性。4、div+css布局。这个东西是走向专业制作的必经之路,网页元素靠它来搭建基本框架,像百度空间,QQ空间的皮肤等就是利用这个来做的。5、数据库。走向动态网页的基础,比如百度知道的提问回答这些,都涉及数据库的读、写、改、删。常见的数据库有mysql、mssql、access等。数据库是所有软件的基础,80%以上的应用程序都涉及数据库,而作为网页制作来说没有必要学得很深,够用就行。6、动态语言,asp,php,jsp,.net(c#等)。要操作数据库,交互就需要动态语言,现在好多动态语言像php都有“框架”,用框架建站好比用活动板房的零件建房子,全部自己写好比一块一块砖砌房子。7、javascript脚本。JavaScript是一种属于网络的脚本语言,通常是通过嵌入到HTML网页中给网页带来各式各样的动态效果。网页里面的验证码,弹窗,特效等就靠它了,一个没有javascript的页面基本没有,这个也有好多的框架可用,这个语言是最难的,也是最强大的,网页木马,病毒大多用这个语言。8、平面涉及软件。flash,photoshop等,页面美化还要靠图片等东西。9、学习一种动态网页技术ASP是微软公司开发的代替CGI脚本程序的一种应用,也是微软公司的第一个服务器侧的脚本引擎,能够动态产生Web页面。ASP可以与Web数据库以及其它程序进行交互,是一种简单、方便的编程工具。扩展资料:设计事项一、注意超链接颜色与单纯叙述文字的颜色呈现WWW的语言—HTML允许Webpage设计者特别标明单纯叙述文字与超链接的颜色,以便丰富Webpage的色彩呈现。如果您的网站充满知识性的信息,欲传达给访问者,建议您将网页内的文字与超链接颜色,设计成较干净素雅的色调,会较有利于阅读。纯粹的叙述文字采用较暗、较深的颜色来呈现,超链接文字则以较鲜明抢眼的色彩来强调,至于探访过的超链接则采用较低于原超链接亮度的颜色做呈现。二、测试所有的超链接与导览按钮的真实可行性Webpage上线之后,第一件该做的事,是逐一测试每一页的每一个超链接与每一个导览按钮的真实可行性。彻底检验有没有失败的link无法链接到该链接的Webpage,却反而冒出“FileNotFound”的错误讯号出来。三、让超链接的字串长短适中且走文自然抓住能传达主要讯息的字眼当做超链接的锚点(anchor),可有效地控制住超链接的字串长度,避免字串过长(如∶整行、整句都是锚点字串)或过短(如∶仅一个字当做锚点),而不利于读者的阅读或点取。四、当导览按钮链接到当前页时各Webpage若重复使用同一组的导览按钮,无可避免地会产生某一导览按钮链接到当前页的情形。为达成界面设计的一致性,并没有绝对的必要性拿掉此导览按钮,但Webpage设计者可让此按钮不再具有超链接的功能;或将此按钮的彩度、亮度降低,使读者可清楚地意识到∶这个暗设下来的导览按钮不再具有超链接的功能。参考资料:百度百科-网页设计师内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • js中值引用和地址引用实例分析
  • javascript引用赋值(地址传值)用法实例
  • js中function引用类型常见有用的方法和属性详解
  • laravel自定义 封装便捷返回json数据格式的引用方法
  • layui use 定义js外部引用函数的方法
  • 原生javascript实现日历功能代码实例(无引用jq)
  • python2.7的flask框架之引用js&css等静态文件的实现方法
  • 微信小程序如何引用外部js,外部样式,公共页面模板
  • javascript地址引用代码实例解析
  • js+css实现可拖动的弹出提示框
  • js判断空对象的实例(超简单)
  • javascript 获取网页参数系统
  • 浅谈js原型对象和原型链
  • javascript实现数字数组正序排列的方法
  • js设计模式之策略模式概念与用法分析
  • 微信小程序蓝牙连接小票打印机实例代码详解
  • js实现带有抽屉效果的产品类网站多级导航菜单代码
  • js中实现浅拷贝和深拷贝的代码详解
  • js 按钮点击触发(兼容ie、火狐)
  • 网页设计需要学习什么?
  • web 2.0到底是什么?
  • 开装修公司需要什么条件
  • 求JAVA项目经验
  • 网页设计与制作的历年考题和答案
  • 谁帮我想个java的项目经验,写在求职简历上的 !
  • 计算机专业毕业的学生应该具备哪些专业素质
  • if语句中的表达式不限于逻辑表达式,可以是任意的数值类型
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全基础知识javascript类库表单特效广告代码网页特效黑客性质javascript技巧domnode.jsjs其它首页javascriptjs中值引用和地址引用实例分析javascript引用赋值(地址传值)用法实例js中function引用类型常见有用的方法和属性详解laravel自定义 封装便捷返回json数据格式的引用方法layui use 定义js外部引用函数的方法原生javascript实现日历功能代码实例(无引用jq)python2.7的flask框架之引用js&css等静态文件的实现方法微信小程序如何引用外部js,外部样式,公共页面模板javascript地址引用代码实例解析js+css实现可拖动的弹出提示框js判断空对象的实例(超简单)javascript 获取网页参数系统浅谈js原型对象和原型链javascript实现数字数组正序排列的方法js设计模式之策略模式概念与用法分析微信小程序蓝牙连接小票打印机实例代码详解js实现带有抽屉效果的产品类网站多级导航菜单代码js中实现浅拷贝和深拷贝的代码详解js 按钮点击触发(兼容ie、火狐)js刷新页面方法大全js中settimeout()的用法详解js截取字符串常用方法详细整理js页面跳转常用的几种方式js打开新窗口的2种方式js数组与字符串的相互转换方法js设置cookie、读取cookie、删除js删除数组里的某个元素方法js 将json字符串转换为json对象的javascript深入理解js闭包bootstrap3学习笔记(一)之网格系统ie8中动态创建script标签onload无效的解决webpack happypack实战详解javascript date格式化示例mint-ui的search组件在键盘显示搜索按钮的javascript兼容性总结之获取非行间样式案javascript继承基础讲解(原型链、借用构造javascript实现可改变滚动方向的无缝滚动使用原生javascript创建通用表单验证——微信小程序实现topbar底部选择栏效果
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved