`

JavaScript入门

    博客分类:
  • Web
阅读更多

 

JS包括ECMAScript标准、DOMBOM三部分组成,但是今天我不会都涉及。

 

学习一门计算机高级语言,都是从数据类型、表达式、运算符、流程、函数等最最基础的部分开始的。我们有了Java的基础,应该特别着重比较两者的异同。我今天主要写JS基础部分的我觉得和Java有区别的几点。

 

 

阅读提醒:

 

 

因为写这篇的目的是为了给自己JS基础部分备忘,所以并没有考虑到各位读者的阅读理解规律,就这点来说这篇文章是不适合发表的。并且,本文并没有罗列全部基础部分的知识点(如表达式部分没涉及)。我建议你们看的时候,就只看我叙述的比较详细的那几点,并且只做一个引入式的参考即可。毕竟,我也是初学者。

 

目录:

1、基本数据类型

2、类型转换(注意和Java中的区别)

3、正则表达式

4、JS中的对象(创建删除等)

 

 

 

一、基本数据类型



【JS基本数据类型图例】 

 

 

 

有些人到这里就会停止思考了,不知道大家有没有注意到两个特别的类型:undefinednull,这两个类型有别于Java中的类型,下面我深入探讨这两个类型。

普通说法:

null关键字的数据类型是系统的一个内置对象,typeofobjectundefinedJS的一个预定义全局变量,typeofundefined。对两个数据类型的值"=="运算结果true"===="运算结果false,不同的原因是"==="会提前检查两者的typeof值是否相同。

于是,我不禁要问了:既然两个类型分别对应了数据自己的唯一专用值,那为什么"=="结果是true,并且网上还有一些说法说undefined是从值null派生出来的呢?带着这个疑问,我研究了他们在内存中表现:

Undefined代表没有赋值的基本数据类型,null代表没有赋值的引用数据类型。


【JS变量内存机制示例】

 

解决第一个问题:为什么undefined继承自null

JS中,基本数据类型都有一个与其对应的引用数据类型,number Numberstring String……他们具有完全相同的行为,并且相互之间会产生自动拆箱和装箱的操作。于是可以得出一个肤浅的结论:基本数据类型是对应引用数据类型的子类,只不过是为了提高效率,将其放在栈内存中而已。对应的Undefined代表无值的基本类型,Null代表无值的引用类型,那势必就可以推出undefined继承null 

解决第二个问题:为什么undefined==nulltureundefined===nullfalse

内存告诉undefinednull都在栈内存中,因为既然是无值的引用类型就没有必要再在堆中开辟空间了。此时,"=="运算的结果就是true了。

 

于是,当我们要切断与对象的联系,但又并不想给变量赋于其他的值,那么我们可了置null,var obj = new Object();obj=null; 

 

 

 

 

二、类型转换:

 

已经定义的数据类型的变量可以在表达式中自动转换数据类型(这里和Java中有不同,我),或者通过相应的方法来转换数据类型。

JS提供两种数据类型的转换,一种是将整个值从一种类型转换为另一种数据类型(称作基本数据类型转换),另一种方法是从一个值中提取另一种类型的值,并完成类型转换工作。

 

自动数据类型转换




 
 【自动数据类型转换例子】

 

自己实现数据类型转换:

 

1、基本数据类型转换

String()

Number():以上两种没有Java中那么多限制。例如Number(fasle)=0.

Boolean:0,NaNnullundefined“”(空字符串)被转换为false外,其他都被转换为true

2、提取整数parseInt(numString,[radix])方法,忽略前导空格,遇非数字字符停止,后一个可选属性表示转换的进制。

3、parseFloat(numString)    eval(codeString)用法基本同上。

 

 

三、正则表达式

 

 

JS提供了一个RegExp对象来完成有关正则表达式的操作和功能,每一条正则表达式模式对应一个RegExp对象实例。

在程序中可以使用正则表达式对象的exec()test()方法进行字符串测试和匹配,也可以使用String对象的4个方法完成这些任务。在完成某些操作时,这些方法会更加简单有效。

match()   myArray=myString.match(regex)——在字符串中搜索匹配的字符串,并将匹配结果在一个数组中返回

replace()   afterString=beforeString.replace(regex,replacedment_value)——用另一个字符串替换搜索到的字符串。

Serch()   var index=myString.search(regex)——返回模式垂询按的开始位置

Split()   myArray=myString.split(regex)——分割成一个字符串数组

 

 

 

 

四、对象

 

程序员可以使用系统预设的对象(DOM树里的和诸如Array等,一般直接使用这些就足够了)也可以自定义对象的属性和方法。

 

 

JS中有四种方法创建对象:

1、通过对象直接量创建对象

  var newObject={属性名1:属性值1,属性名2:属性值2……}

2、使用构造函数创建对象:

var newObject=new Object(Paramenters table);

3、通过函数创建对象

Function student(name,sex){

this.name=name;

This.sex=sex;

}

var student=new sudent("贾懂","");

 

4、通过类创建对象

class  TV                  //定义类

{

var Make:String;      //类的属性

var Model:String;

function TV(make,model){         //定义构造函数(系统内置变量的构造函    数有系统规定)

this.Make=make;

this.Model=model;

}

Var myTV=new TV{"Haier","32 inch"};//使用new关键字创建对象实例

 

 

 

如何定义对象的方法?

Fuction product(name){

This.name=name;

This.totle=totle;  //要显示申明该对象对应的方法

}

Function totle(){

return("对象方法要在构造函数中申明");

}

 

var demoResult=new product("对象方法测试").totle();

属性和方法是这样:在构造函数内定义为所有的对象实例共享,在构造函数外定义只作用于单个对象实例。

 

 

删除对象

objectName=null/undefined;

delete 对象名.属性名

delete 对象名.方法

 

 

系统内置对象

String  Boolean  Number   Math    Date  Array    

Window中对象(特别的DOM中对象)

 

 

Cookie的使用:

Cookie是浏览器和服务器之间进行状态会话的方式。

Cookie是大小是有限制的。可以使用JS来对cookie进行操作,可以创建、读取、删除cookie等操作。Cookie实际上是一段字符串,由浏览器当前的地址和有效的属性信息构成。

 

  • 大小: 4.8 KB
  • 大小: 8.5 KB
  • 大小: 89 KB
分享到:
评论

相关推荐

    JavaScript 入门与提高

    本资料“JavaScript 入门与提高”由曾光和马军编著,旨在帮助初学者快速掌握JavaScript基础知识,并进一步提升技能水平。 首先,入门阶段,你需要理解JavaScript的基本语法,包括变量声明、数据类型(如字符串、...

    javascript入门参考资料.rar

    作为“javascript入门参考资料”这个压缩包,它包含了帮助初学者踏入JavaScript世界的必备资料。 首先,"javascript入门参考资料.ppt"很可能是一个PowerPoint演示文稿,这种格式通常用于教学或讲座,以图文并茂的...

    JavaScript入门学习资料包

    总之,这个"JavaScript入门学习资料包"为初学者提供了一个全面学习JavaScript的平台,从基础到高级,从理论到实践,逐步建立起扎实的JavaScript知识体系。通过系统学习和不断实践,你将能够熟练掌握这门强大的编程...

    JavaScript入门教程(初学者不可多得的优秀入门教材,通俗易懂,专业术语通俗化).doc

    ### JavaScript入门教程知识点详解 #### 一、JavaScript简介与学习理由 **JavaScript**是一种轻量级的编程语言,因其强大的兼容性和简易性成为了前端开发人员的首选。它由Netscape公司在1995年首次推出,起初被...

    javascript入门实用例子

    本资源“javascript入门实用例子”是一个针对初学者的实践教程,旨在帮助你快速理解并掌握JavaScript的基础知识和实际应用。通过使用Eclipse这样的集成开发环境(IDE),你可以更方便地管理和调试代码。 首先,让...

    JavaScript入门推荐首选书籍

    JavaScript入门推荐首选书籍推荐

    JavaScript入门教程_适合初学者

    JavaScript,一种广泛应用于网页和网络应用的编程语言,是互联网上实现动态交互的关键技术。...通过阅读《JavaScript入门教程.ppt》这个压缩包中的内容,初学者可以逐步深入到JavaScript的世界,开启编程之旅。

    JavaScript 入门 新手学习笔记

    这篇"JavaScript入门新手学习笔记"提供了全面的学习资源,适合初学者系统性地掌握这一技术。 笔记可能包含了以下关键知识点: 1. **基础语法**:JS的基础包括变量(var、let、const)、数据类型(如字符串、数字、...

    javascript入门视频教程(比较不错的)

    "javascript入门视频教程(比较不错的)" 提供了一个全面学习JavaScript的基础路径,帮助新手逐步掌握这门语言。 本教程可能包含以下核心知识点: 1. **基础语法**:讲解JavaScript的基础,包括变量、数据类型(如...

    JavaScript入门课件与笔记

    在"JavaScript入门课件与笔记"中,你可以找到一系列帮助初学者掌握这门语言的资源。这些课件可能包含了从基础语法到高级特性的详细讲解,旨在帮助“小白”逐步建立起对JavaScript的理解。 1. **基础语法**:...

    ArcGIS-API-for-JavaScript入门教程

    ### ArcGIS API for JavaScript 入门教程知识点 #### ArcGIS 平台概述 ArcGIS 是一个由 ESRI(环境系统研究所)提供的地理信息系统(GIS)平台,它支持数据采集、管理、分析、映射以及共享等多种功能。ArcGIS 平台...

    javascript入门教程

    在“JavaScript入门教程”中,你将学习到以下关键知识点: 1. **基础语法**:包括变量、数据类型(如字符串、数字、布尔值、null、undefined)、操作符(如赋值、比较、逻辑操作符)以及流程控制语句(如条件语句if...

    新JavaScript入门 (日文chm版)

    新JavaScript入门 (日文chm版) javascript JavaScript 对日开发 对日 日文chm版

    javascript入门特效

    "JavaScript入门特效"这个主题,主要涵盖了使用JavaScript实现的各种视觉效果,如波浪字体和滚动图片等,这些都是初学者经常会接触到的基本技能。 首先,我们来探讨波浪字体。波浪字体效果是通过JavaScript和CSS的...

    JavaScript入门教程(清晰PDF)

    此"JavaScript入门教程(清晰PDF)"提供了一个良好的起点,帮助初学者理解这一强大的编程工具。本教程涵盖了JavaScript的基本概念、语法以及实际应用,旨在使读者能够熟练地在浏览器环境中编写代码。 一、JavaScript...

    javascript入门实例

    通过上述JavaScript入门实例,你可以逐步学习并实践这些概念,从而更好地理解和应用JavaScript,为构建动态、交互性强的网页打下坚实基础。记住,实践是检验真理的唯一标准,多做练习,理论结合实际,你会发现自己在...

    JavaScript入门教程--书籍(pdf)

    本教程旨在为初学者提供一个全面的JavaScript入门指南,帮助你快速掌握这一强大的脚本语言。 一、JavaScript概述 JavaScript,简称JS,由Netscape公司的Brendan Eich在1995年发明,起初用于网页交互,现在已成为Web...

    javascript入门全集 + 新浪编辑器

    这个"javascript入门全集"很可能包含了一系列的教程、指南和实战案例,旨在帮助初学者掌握JavaScript的基础知识和实际应用。 JavaScript是一种轻量级的解释型编程语言,它的主要特点是动态类型、基于原型的对象和...

    Javascript 入门教程

    第1章 JavaScript语言概述.pdf 第2章 JavaScript语言基础.pdf 第3章 JavaScript事件处理.pdf 第4章 JavaScript基于对象编程.pdf 第5章 文档对象模型(DOM).pdf 第6章 String、Math、Array等数据对象.pdf 第7章 Window...

Global site tag (gtag.js) - Google Analytics