`
cobo85
  • 浏览: 116967 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JavaScript系统学习问题发现与总结(一)

阅读更多

        虽然对JavaScript面向对象编程有一定的掌握,在工作中也是遇到问题解决问题,没有系统的把JavaScript学习一遍,基础掌握的并不是特别的牢固。刚好宿舍现在断网了,晚上有时间抱着月影的《JavaScript王者归来》仔细的研读下,

收获还是很大的。接下来的时间会把自己以前不太太清楚的东西都慢慢记下来。

 

       在编程的世界里面,每种语言都会涉及到操作数的引用,JavaScript也不例外,不同在于在JS中可以直接声明变量指向函数,在C/C++虽然可以通过指针的方式来达到这样的目的,但毕竟还是不灵活的,而java中试完全行不同的(听说以后也要在java中加入闭包这样的话,也能实现)。下面来简单分析下JavaScript里面的值引用和地址引用。

 

      

//先看下代码
var a="abc";
var b="abc";
var d=5;
var e=5;
var i={"a":a,"b":b};
var k={"a":a,"b":b};

alert(a==b);//结果为true
alert(d==e);//结果为true
alert(i==k);//结果为false

 

  

var a=3;
var b=a;
b++;
alert(b);
alert(b==a);//结果为false ,证明值引用的方式会因=操作产生一个副本
var i={"a":3,"b":3};
var k=i;//变量k也引向对象{"a":a,"b":b};
alert(k==i);//结果为true
k.a=4;
alert(k==i);//结果仍为true
alert(i.a);//结果为4,k引用对象的改变也引起i引用对象的改变,证明在地址引用中对象还是一个,=操作并没有产生副本

 

通过上面的显示结果很明显的看出,JavaScript中的基本类型是按值直接引用的,也就是说变量中直接存放的就是赋予变量的值,而对于变量对对象的引用里面是存放的是对象的引用地址,虽然对象的属性内容是一样的但是他们的引用地址是不同的,这也就是i==k是fasle的原因。不过有一点需要注意,变量对字符串的引用虽然引用的是字符串存放的地址但是比较的却是字符串的内容而不是变量存放的地址值。

   

    PS:前天还为匹配数字的问题而特意写了一个正则表达式,但今天发现JavaScript里面已经有一个原生的只是函数了:

isFinite(obj),直接就能得出obj是不是数字类型的!看来JavaScript的基础是很重要的,掌握好基础才能真正的掌握JS!

分享到:
评论

相关推荐

    基于机器学习的JavaScript恶意代码检测系统的研究与实现

    【基于机器学习的JavaScript恶意代码检测系统的研究与实现】这篇论文关注的是网络安全领域的一个重要问题——JavaScript恶意代码的检测。JavaScript因为其与后台通信的能力和广泛的应用,常常被不法分子利用来进行...

    JavaScript高级程序设计学习总结

    JavaScript,作为全球最广泛使用的编程语言之一,是创建交互式...以上只是《JavaScript高级程序设计》一书中部分关键知识点的概括,深入学习和实践将帮助开发者更好地理解和应用JavaScript,创造出高效、优雅的代码。

    javaScript学习笔记总结.docx

    JavaScript是一种轻量级的解释型编程语言,主要用于网页和网络应用开发。它由网景公司的Brendan Eich在1995年发明,最初设计目的是增强网页的交互性,验证表单数据。JavaScript的运行环境是浏览器,它不需要预编译,...

    JavaScript的系统函数学习

    根据给定文件的信息,我们可以总结出关于JavaScript中的几个重要系统函数的知识点,这些知识点主要集中在URI编码解码、数字解析以及数值判断上。 ### 1. URI 编码与解码 #### 1.1 `encodeURI()` - **功能**:`...

    个人Javascript学习笔记 精华版

    本资源为个人Javascript学习笔记的精华版,涵盖了Javascript的基础知识、事件处理、对象和系统函数、浏览器对象等方面的内容。下面是对每个知识点的详细说明: 1. 什么是JavaScript? JavaScript是一种脚本语言,...

    Javascript总结导图

    以上只是JavaScript知识体系的一部分,"JavaScript总结导图"应包含更全面的内容,帮助开发者快速理解和回顾JavaScript的关键知识点。通过深入学习和实践,你可以掌握这门强大的语言,构建功能丰富的Web应用。

    Javascript学习资料

    在压缩包中还有一个名为"Javascript学习"的文件,可能是另一份文档或电子书,它可能与"10步学习 JavaScript.pdf"相辅相成,提供不同角度的解释或更深入的内容,比如面向对象编程、闭包、模块化、Promise和async/...

    javascript学习总结,包含平时积累的例子

    本学习总结主要涵盖JavaScript的基础知识、语法特性、以及一些实用的例子。 1. **基础概念** - JavaScript是解释型语言,由网景公司的Brendan Eich在1995年发明。 - 它主要应用于网页和网络应用,但也可用于...

    JavaScript必看全面总结.zip

    JavaScript,作为全球最广泛使用的编程语言之一,是前端开发的核心技术。这份名为“JavaScript必看全面总结.zip”的压缩包文件...通过系统学习和实践,开发者可以有效地提升JavaScript技能,更好地驾驭前端开发的世界。

    JavaScript总结笔记

    ### JavaScript总结笔记 #### JavaScript简介 JavaScript是一种广泛使用的、基于对象和事件驱动的脚本语言。它最初由网景公司(Netscape)的布兰登·艾奇于1995年创建,并逐渐成为现代Web开发的核心技术之一。...

    JavaScript学习笔记之总结与回顾(学习JavaScript基础知识看这一篇就够了,文章总字数2.8万)源码

    这篇“JavaScript学习笔记之总结与回顾”涵盖了从基础到进阶的广泛内容,总计2.8万字,旨在为学习者提供一个全面的理解JavaScript的平台。 在学习JavaScript时,首先会接触的是基本的语法结构,包括常量、变量和...

    系统测试问题总结

    【系统测试问题总结】 在软件开发过程中,系统测试是一个至关重要的阶段,它的目的是验证整个系统是否按照需求规格书的功能和性能要求正常运行。系统测试涵盖了集成测试后的所有组件,包括前端用户界面、后端数据库...

    javascript 抽奖系统的设计与实现

    ### JavaScript抽奖系统设计与实现详解 #### 一、概述 本篇文章将深入解析一个纯JavaScript编写的抽奖系统的实现原理及关键技术点。该抽奖系统体积小巧,功能却十分丰富,不仅适用于初学者的学习,也可作为实际...

    web前端总结的一套JavaScript 语言基础知识点总结

    本文将基于一位有着丰富经验的40岁Web前端开发者所总结的JavaScript语言基础知识进行详细阐述。 一、变量与数据类型 在JavaScript中,变量的声明使用var、let或const关键字。var是函数作用域,let和const则是块级...

    一份JavaScript程序员的学习指南

    JavaScript,作为全球最广泛使用的编程语言之一,是前端开发的核心技术,也是许多后端框架的基础。这份"JavaScript程序员的学习指南...通过系统学习和不断实践,你将能够驾驭这门强大的语言,创造出令人惊叹的Web应用。

    JavaScript编程总结

    JavaScript是一种广泛应用于网页和网络应用的脚本语言,主要负责客户端的交互逻辑。在本文中,我们将探讨一些JavaScript编程中的核心知识点。 1. **处理XSLT调用带参数的XSLT模板** 在JavaScript中,我们可以使用...

    TypeScript 入门教程从 JavaScript 程序员的角度总结思考,循序渐进的理解 TypeScript.zip

    总结,从 JavaScript 迁移到 TypeScript 是一个值得投资的过程,虽然初期可能需要投入额外的学习成本,但长期来看,TypeScript 的诸多优点将显著提高开发效率和代码质量。因此,无论你是个人开发者还是团队成员,都...

    Javascript学习教材打包下载 相当于免费

    这些文档的内容,对于想要系统学习JavaScript的初学者来说,是非常有价值的资源。它们可能以易于理解的方式介绍了JavaScript的基本概念,并逐步引导学习者掌握编程技能。每个章节都独立且连贯,帮助读者逐步建立对...

    基于html与JavaScript使用spark和MongoDB的商品推荐系统设计与实现

    在本项目中,“基于HTML与JavaScript使用Spark和MongoDB的商品推荐系统设计与实现”是一个集成技术的典型应用,旨在利用大数据处理工具Spark和NoSQL数据库MongoDB构建一个能够为用户提供个性化商品推荐的系统。...

    基于JavaScript开发的错题系统

    一个基于JavaScript的错题系统通常采用前后端分离的架构,前端负责用户界面的展示和交互,后端处理数据的存储与管理。前端主要依赖于HTML、CSS和JavaScript,其中JavaScript作为主要脚本语言,负责页面动态效果和...

Global site tag (gtag.js) - Google Analytics