`
zha_zi
  • 浏览: 592737 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

js 面向对象学习1 数据类型

 
阅读更多

                    ECMAScript基础

    1原始值和引用值:

       primitive value 是储存在stack中的简单数据段,也就是说他们的值直接储存在变量储存的位置。

reference value 是储存在heap 中的对象,也就是说储存在变量处得是一个(指针 point),指向储存对象的内存地址。

为变量赋值时ecmascript会自动判断是原始类型还是引用类型,要实现这一点,解释程序要该值是不是ecmascript 的原始类型之一,Undefined,Null ,Nubmer,Boolean,String,由于这些原始类型占据的内存空间是固定的,所以可以将他们放在储存较小的内存地址stack 中,这样方便在内存中迅速寻找变量的值。如果值是引用类型则内存空间在heap 中分配。因为引用值的大小会改变所以不能把他们放在stack中,因为地址的大小是固定的所以要把引用类型的地址放在变量值中这样可以提高内存访问速度。

    2判断类型typeof

      ecmascript提供typeof运算符来判断某一个值是否在某种类型范围之内。可以用typeof判断一个值是否表示为一个原始类型,如果是原始类型还可以判断是那一种原始类型。

 

var str="this is jssrcipt";
console.log(typeof str);//string
console.log(typeof 30);//number

 undefined 如果变量是Undefined类型

 boolean 如果变量是Boolean类型

 number 如果变量是Number

 string 如果变量是string 类型

 object 如果变量是引用类型。

 

Undefine 类型 :

    Undefine 类型只有一个值 那就是undefine 值,当声明变量未初始化的时候它的默认值就是undefine

 

var und;
console.log(und); //undefine
console.log(und==undefine);//true

 注意: 值undefine 与undefine 是不一样的,但是typeof 不会真正的考虑两者的不同例如

var tmp 
console.log(typeof tmp); // undefined
console.log(typeof tmp1);//undefined
如果没有console.log(typeof tmp1)
而是直接console.log(tmp1==undefined)结果是error
应为tmp1 并没有赋值为undefined 

 当函数没有明确返回值的时候也为undefined

function testFun(){
  
}
console.log(testFun()==undefined); //true
 

Null类型:

   另外只有一个值的类型就是Null,它只有一个字面量null 值undefine实际是由null 派生而来 null==undefined 是true,

尽管两个值相等,但是他们的含义完全不同。undefine 是声明了变量但是没有初始化,null 则表示尚未存在的对象。

如果函数方法返回的是对象,那么找不到该对象就是null。

 

Boolean 类型:

   emcascript 中最常用的类型之一,他只有两个值 true,false,

 

 

 

 

 

 

分享到:
评论

相关推荐

    JavaScript面向对象编程指南

    《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中的运用;数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码...

    JavaScript面向对象编程指南.pdf

    JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在... 《JavaScript面向对象编程指南》着重介绍JavaScript在面向对象方面的特性,展示如何构建强健的、可维护的、功能强大的应用程序及程序库

    javascript面向对象编程

    数据类型、操作符以及流程控制语句;函数、闭包、对象和原型等概念,以代码重用为目的的继承模式;BOM、DOM、浏览器事件、AJAX和JSON;如何实现JavaScript中缺失的面向对象特性,如对象的私有成员与私有方法;如何...

    JavaScript学习深入—面向对象编程

    ### JavaScript学习深入—面向对象编程 #### 一、JavaScript中的类型概述 JavaScript作为一种动态的、弱类型的语言,其核心特点之一在于它灵活的对象模型。尽管JavaScript的基础架构支持面向对象编程(OOP),但在...

    面向对象JavaScript开发

    面向对象编程是一种基于对象和类的编程范式,它强调数据和操作数据的方法的封装。在JavaScript中,面向对象主要通过构造函数、原型链、原型对象和闭包等机制来实现。 1. **构造函数**:构造函数在JavaScript中扮演...

    JavaScript面向对象编程指南(第2版).rar

    JavaScript是一种广泛...通过深入学习这本《JavaScript面向对象编程指南(第2版)》,开发者不仅能掌握JavaScript的面向对象编程基础,还能了解到实际项目中如何有效地运用这些知识,提升编程技巧和解决问题的能力。

    js面向对象简单理解

    面向对象编程(Object-Oriented Programming,OOP)是编程的一种范式,它基于“对象”概念,将数据和处理数据的方法封装在一起。在JavaScript中,我们可以通过构造函数、原型和实例来实现面向对象编程。 首先,让...

    JavaScript面向对象高级编程

    ### JavaScript面向对象高级编程知识点概述 #### 面向对象编程(OOP) 1. **继承**:继承是OOP的核心概念之一,它允许我们创建一个类,该类继承了另一个类的属性和方法。继承机制是实现代码重用和创建类之间层次结构...

    JS面向对象学习资料

    封装是面向对象的一个核心特性,通过将数据和操作数据的函数打包在对象内,实现数据保护。例如: ```javascript function Car(make, model) { this.make = make; this.model = model; this.getDetails = ...

    js真正了解面向对象.pdf

    以下是一些关于JavaScript面向对象的知识点: 1. 数据类型: JavaScript具有五种基本数据类型:number、string、boolean、object和undefined。其中,object类型包含了如Date、Array、Math等内置对象类,以及自定义...

    JS面向对象汇总PDF

    **JS面向对象汇总PDF**是针对JavaScript编程语言中面向对象编程概念的一个综合性的学习资料,主要探讨了JavaScript如何实现面向对象编程(OOP)的设计原则和模式。在JavaScript中,面向对象编程是一种重要的编程范式...

    javascript面向对象编程(中文)

    在本“JavaScript面向对象编程”主题中,我们将深入探讨这一概念及其在JavaScript中的应用。 1. **对象和类的概念**:在面向对象编程中,对象是数据和操作这些数据的方法的集合。在JavaScript中,对象是由键值对...

    面向对象javascript

    通过学习面向对象的JavaScript,我们可以提高开发效率和代码健壮性,编写出更加灵活和可维护的代码。 面向对象的JavaScript是一种强大的编程范式,能够提高开发效率和代码健壮性。通过学习面向对象的JavaScript,...

    Javascript面向对象基础.rar

    在这个“JavaScript面向对象基础”的资料中,我们将会探讨JavaScript中的类、对象、封装、继承以及多态等关键概念。 1. **对象与对象字面量** 在JavaScript中,对象是由键值对组成的无序集合,可以使用对象字面量...

    javascript面向对象

    ### JavaScript面向对象编程详解 #### 引言 在软件工程领域,面向对象编程(OOP)是一种编程范式,它使用“对象”来设计软件。每个对象都可以包含数据(属性)和方法(行为)。JavaScript虽然起初并非为面向对象...

    JavaScript面向对象的支持

    在JavaScript中,函数不仅是可调用的数据类型,还可以作为其他数据类型的成员。函数可以被赋值给变量、作为参数传递,甚至作为返回值。此外,函数在JavaScript中扮演着构造器的角色,通过`new`关键字可以创建新的...

Global site tag (gtag.js) - Google Analytics