JS基础学习08

今天主要学习到的是对象的概念及对象的创建。

22. 基本包装类型

昨天在学习JS中内置的对象时,字符串作为基本数据类型也具备对象的属性和方法,这里就是讲字符串变成了基本包装类型。

而在基本包装类型调用时会经过以下几个步骤:

1 先生成一个临时的基本包装类型的对象,var temp = new String();

2 使用这个临时创建的对象,调用临时对象的属性和方法。

3 调用完毕之后,立即消毁,temp = null;

通过上面的三个步骤使字符串具备了对象的属性和方法。

23. 对象的概念和作用

23.1 概念

对象就是存储一类事件的特征和行为的集合,或是键值对的集合。

由事件的特征构成对象的属性,由事件的行为构成对象的方法。

23.2 作用

1 可以帮助我们封装一类数据,并方便我们对这些数据的传输和控制。

2 可以帮助我们描述一类事物。

24. 创建自定义的对象

24.1 使用Object构造函数来创建对象

var student = new Object();  //使用内置的构造函数创建一个对象名为学生的空对象。
student.name = "张三";//给对象赋予属性和属性值。
student.sex = "男";
student.age = 20;
student.sayHi = function (){//给对象赋予方法名和方法值。
    console.log("我叫"+student.name+",我今年"+student.age+",我是"+student.sex+"生");
};
student.sayHi();//通过对象名.方法的方式来调用对象方法。

但是如果同时需要创建多个一类的对象,使用上述方法创建对象会出现代码的冗余,严重影响程序的运行速度。

所以我们将上述代码封装在一个函数中,用于批量创建同类型的对象。

24.2 批量创建对象

function  createStudent(name,age,sex){
    var student = new Object();//每进行一次函数的调用都会使用内置的构造函数创建一个对象名为学生的空对象。
    student.name =name;
    student.age = age;
    student.sex= sex;
    student.sayHi= function(){
        console.log("我叫"+student.name+",我今年"+student.age+",我是"+student.sex+"生");
    };
    return student;//每进行一次函数的调用都需要将创建对象返回。
}

但是在这个封装函数内还是存在会重复使用的代码。

24.3 创建构造函数

我们可以创建一个自定义的构造函数,并通过这个构造函数来创建对象。

function Student(name,sex,age){  //我们自己定义一个构造函数,用来创建我们需要的对象。
    this.name = name;    // this关键字指代使用这个构造函数创建出来的对象。
    this.age=age;
    this.sex = sex;
    this.sayHi = function(){
        console.log("我叫"+this.name+",我今年"+this.age+",我是"+this.sex+"生");
    };
}
var ls = new Student("李四","男",25); // 使用这个构造函数创建对象并返回。
ls.sayHi();

这里涉及到了两个关键字的使用,一个为new关键字,一个为this关键字。

24.4 this关键字的作用

在JS中,通过构造函数创建对象时,构造函数中的this关键字就会指代创建时的对象名。

24.5 new关键字的作用

在使用new关键字调用构造函数创建对象的时候,new 键字会完成下面4个步骤:
1 使用构造函数创建一个空对象。
2 将关键字this指向这个空对象。
3 执行构造函数里面的代码,给当前空对象this设置属性和方法。
4 将this这个当前对象返回。

25. 通过对象字面量创建对象

我们可以通过var o = {};的方式创建一个空对象,这种就是对象字面量的创建方式。

var o = {   
    name:"张三",
    age:20,
    address:"上海市",
    sex:"男",
    sayHi:function(){
        console.log("大家好,我的名字是:"+ this.name+",我的年龄是:"+ this.age+",我是"+ this.sex+"生");
    }
};
o.sayHi();

26. JSON

JSON就是JavaScript对象表现形式,而JSON对象的创建方式与通过对象字面量创建对象的方式相类似,区别在于JSON对象需要在创建的属性上加双引号。

var o1 = {    //JSON对象
    "name":"张三",
    "age":20,
    "address":"上海市",
    "sex":"男",
    "sayHi":function(){
        console.log("大家好,我的名字是:"+ this.name+",我的年龄是:"+ this.age+",我是"+ this.sex+"生");
    }
};

JSON对象的作用为传输数据的一种数据格式,可以用来与后台的数据传输。

时间: 2024-10-16 12:28:44

JS基础学习08的相关文章

python基础学习08(核心编程第二版)部分

# -*- coding: utf-8 -*- # ==================== #File: python #Author: python #Date: 2014 #==================== __author__ = 'Administrator' #异常 """ NameError: 尝试访问一个未申明的变量 ZeroDivisionError:  除数为零 SyntaxError: 解释器语法错误 IndexError: 请求的索引超出序列范

js基础学习笔记(二)

2.1  输出内容(document.write) document.write() 可用于直接向 HTML 输出流写内容.简单的说就是直接在网页中输出内容. 第一种:输出内容用“”括起,直接输出""号内的内容. <script type="text/javascript"> document.write("I love JavaScript!"); //内容用""括起来,""里的内容直接输出.

js基础学习笔记(一)

* 在js编写过程中,尽量保持统一使用单引号 'XXXX': * 所有变量都要声明 var,避免全局函数调用的冲突: 1.1    输出内容 docment.write(‘aileLi’); 改变某ID元素样式 docment.getElementById(‘ID’).style.color=’样式参数’; 1.2   输出弹出框 alert(‘aileLi’); 1.5  什么是变量?  从字面上看,变量是可变的量: 从编程角度讲,变量是用于存储某种/某些数值的存储器. 定义变量使用关键字va

js基础学习笔记(三)

3.1 认识DOM 文档对象模型DOM(Document Object Model)定义访问和处理HTML文档的标准方法.DOM 将HTML文档呈现为带有元素.属性和文本的树结构(节点树). 先来看看下面代码: 将HTML代码分解为DOM节点层次图: HTML文档可以说由节点构成的集合,三种常见的DOM节点: 1. 元素节点:上图中<html>.<body>.<p>等都是元素节点,即标签. 2. 文本节点:向用户展示的内容,如<li>...</li&g

JS 基础学习整理

心得:   很多人都说JS的话其实是挺难的,但是也是很重要的,这句话其实一点都没错,就像这几天学习的js基础,刚开始基本学的就是一个框架和简单的算法思想就已经抬升了很大的一个难度阶级,对像我这类数学思维不是很好的人来说,其实就更是一个挑战了,但是,没有谁生来就会的,虽然我们的算法思维不是很好,但是,希望能在更多的练习中找到这种题型的解决方式,别人敲三道,我们可以敲五道,只希望在更多的练习中去克服这个难点,慢慢的去培养这种算法思想. 就这前面三天学的JS课程来说,其实比较难的也就是循环,很多时候怎

JS 基础学习随想

2012年就已经接触过了js,给我的印象:这是一门谈不上复杂的语言.大概这就是所谓的学的越浅,用的越少,觉得自己会的东西好像得更多吧!开始做基础练习题的时候觉得好像都十分简单.可是后来在做到对象数组的部分还是遇到了问题,接着发现自己其实并不非常了解js.首先来说说我在codefordream基础学习的情况吧 基础部分主要学习的有:注释符号,数据类型,算数运算,逻辑术语,判断语句,循环语句,及function. 简单的可以说说的是,由于长期使用其他语言的原因,js对于数组的遍历其实有一点区别: 最

Vue.js 基础学习 v-on 指令

在前面的基础学习中已经写了v-for和v-bind两个指令 今天学习v-on指令 v-on指令:用来绑定事件的body中 <div id="app"> </div> script中 var app = new Vue({ el : '#app', methods : { } }) 在div app中加入一个button并绑定一个点击事件 <button v-on:click="onClick">点我</button>

Vue.js 基础学习

今天我开始了Vue.js 的学习. 那么什么是Vue.js 呢? Vue.js是一套开发Web页面的JavaScript脚本框架.听起来感觉很难,不过据说,Vue.js是Web-Javascript脚本框架中最容易上手的框架.所以我便选择了先来学习这个. 要学习Vue.js首先就要获取库文件了,在网上有很多地方可以找到,我是在bootcdn上找到的 接下来我们通过Vue输出一串Hello World ! 首先引入vue. <script src="https://cdn.bootcss.c

JS基础学习(一)

JavaScript概述 JavaScript的历史 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEase.(客户端执行的语言) Netscape(网景)接收Nombas的理念,(Brendan Eich)在其Netscape Navigator 2.0产品中开发出一套livescript的脚本语言.Sun和Netscape共同完成.后改名叫Javascript 微软随后模仿在其IE3.0的产品中搭载了一个