JavaScript对象

1.什么是JavaScript对象?

JavaScript 中的所有事物都是对象:字符串、数字、数组、日期,等等。

在 JavaScript 中,对象是拥有属性和方法的数据。

2.JavaScript对象的分类

(1)内建对象

js中的内部对象包括Array、Boolean、Date、Function、Global、Math、Number、Object、RegExp、String以及各种错误类对象,包括Error、EvalError、RangeError、ReferenceError、SyntaxError和TypeError。

其中Global和Math这两个对象又被称为“内置对象”,这两个对象在脚本程序初始化时被创建,不必实例化这两个对象。

(2)自定义对象

  1. 通过var obj={}  对象字面量(object literal)法
  2. 通过构造函数创建对象:function Person(){}   var Person=function(){}
  3. 通过Object.create创建对象

3.访问对象的属性和方法

(1)属性操作

  1. 访问属性
  2. 添加属性
  3. 修改属性
  4. 删除属性
  5. 遍历属性

(2) 访问方法:对象名.方法名()   eg:Obj.Name     对象名["方法名"]      eg: Obj["Name"]

注意:1.在引用已有的对象属性时,并有属性名的情况下,用点和中括号是一样的;若属性是数组或者是对象,没有属性名,则要用类似数组元素引用的方式,用中括号+下标表示。

2.在创建函数属性的时候,若属性名是已知的。用点和中括号的的方式一样。若属性名是一组变量,则只能用中括号表示。中括号的灵活应用可以让代码变的很强大。

4.实例运用

1.猜数字游戏,有一个0-100随机数 玩家有5次输入的机会猜,每次猜一次,都要将结果告诉玩家是小了,还是大了,如果在5次机会内猜中,输出“聪明”,程序结束,如果5次机会用完 程序直接结束。

<!DOCTYPE html>
<html lang="en"> <head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head> <body>
<!-- 1.猜数字游戏,有一个0 - 100随机数 玩家有5次输入的机会猜,
// 每次猜一次,都要将结果告诉玩家是小了,还是大了
// 如果在5次机会内猜中,输出“聪明”,程序结束
// 如果5次机会用完 程序直接结束。 -->
<script>
var arr = parseInt(Math.random()*100); for(var i=5;i>0;i--){
n=parseInt(window.prompt("请输入一个0-99的数字"+"只有"+i+"次机会额"));
if(n>arr){
alert("这个数比随机数大,还有"+(i-1)+"次机会额");
}
else if(n<arr){
alert("这个数比随机数小,还有"+(i-1)+"次机会额");
}
else if(n==arr){
alert("聪明,猜对了额");
}
}
alert("数字是"+arr+"想不到吧");
</script>
</body> </html>

2.输入2个日期 (年月日),计算两个日期相差多少天?

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<script>
/* 3.输入2个日期 (年月日),计算两个日期相差多少天? */
var arr=new Array();
arr[0]=new Date(window.prompt("请输入第一个日期"));
arr[1]=new Date(window.prompt("请输入第二个日期"));
var time=0;
time=(arr[0]-arr[1])/1000/60/60/24;//time=(arr[0]-arr[1])/(24*3600*1000) 计算天数
document.write(Math.abs(time));
</script>
</body>
</html>

本次是小姐姐第一次写博客,对于JavaScript对象也还在研究学习中,写得不足之处还请大家多多包涵,希望能与大家多多交流学习。感谢您在百忙之中翻阅我的随笔,如果想了解更多的JavaScript知识,可以关注zhiliaotang.com学习社区额。

【知了堂学习笔记】/JavaScript对象--/暖妮的更多相关文章

  1. 【知了堂学习笔记】java 自定义异常

    java 常见异常种类(Java Exception): 算术异常类:ArithmeticExecption 空指针异常类:NullPointerException 类型强制转换异常:ClassCas ...

  2. [知了堂学习笔记]_纯JS制作《飞机大战》游戏_第2讲(对象的实现及全局变量的定义)

    整体展示: 一.全局变量 /*===================玩家参数==========================*/ var myPlane; //英雄对象 var leftbtn = ...

  3. [知了堂学习笔记]_JSON数据操作第1讲(初识JSON)

    一.认识JSON 什么是JSON? JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式..它基于 ECMAScript (w3c制定的js规 ...

  4. [知了堂学习笔记]_纯JS制作《飞机大战》游戏_第1讲(实现思路与游戏界面的实现)

    整体效果展示: 一.实现思路 如图,这是我完成该项目的一个逻辑图,也是一个功能模块完成的顺序图. 游戏界面的完成 英雄飞机对象实现,在实现发射子弹方法过程中,又引出了子弹对象并实现.在此时,英雄飞机能 ...

  5. [知了堂学习笔记]_ajax的两种使用方式

    一.Ajax概述 1.什么是同步,什么是异步 同步现象:客户端发送请求到服务器端,当服务器返回响应之前,客户端都处于等待 卡死状态 异步现象:客户端发送请求到服务器端,无论服务器是否返回响应,客户端都 ...

  6. 【知了堂学习笔记】java 接口与抽象类

    本次主角:抽象类 .接口. 对于皮皮潇这样一类的Java初学者来说,接口和抽象类如果不去花大量的精力与时间是很难弄清楚的,而我也是在最近这周的项目学习中感觉到了我对这两个概念不熟悉,所以导致对一些问题 ...

  7. 【知了堂学习笔记】java web 简单的登录

    最近皮皮潇在学习java web,刚接触了简单的东西,所以今天给大家带来一个简单的登录实现. 页面: 页面代码: <%@ page language="java" conte ...

  8. 【知了堂学习笔记】java 底层容易忽略的知识点

    1. java中的关键字 提到关键字,最主要的就是不能用关键字作为标识符,值得注意的有以下几点. ①其中goto与const在java中没有定义,但是也是关键字.这个基本用不到,但是应该有个认知. ② ...

  9. 【知了堂学习笔记】java IO流归纳总结

    皮皮潇最近学到了IO流但是感觉这一块要记的东西太多了,所以重API上查阅并总结了以下几点关于IO的知识. 1.File(文件类): File类是文件以及文件夹进行封装的对象,用对象的思想来操作文件和文 ...

随机推荐

  1. Property list types and their various representations

    iOS下Property list能够存储的数据类型  Property list types and their various representations  Abstract type XML ...

  2. POJ 1469(裸二分匹配)

    COURSES Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 18993   Accepted: 7486 Descript ...

  3. 深入理解计算机系统_3e 第三章家庭作业 CS:APP3e chapter 3 homework

    3.58 long decode2(long x, long y, long z) { int result = x * (y - z); if((y - z) & 1) result = ~ ...

  4. SpringMVC+ZTree实现树形菜单权限配置

    计划在开源项目里加入权限配置的功能,打算加入zTree实现树形结构. Team的Github开源项目链接:https://github.com/u014427391/jeeplatform 欢迎sta ...

  5. Laravel学习笔记(一)

         根据国外的调查,Laravel是最流行的框架,最近公司需要PHP的开发人员,但是一直招不到人,只好亲自上阵研究一下.由于以前对PHP只是大致了解,这次学习开始的时候也挺挠头的,到今天稍微入了 ...

  6. geoserver集成以及部署arcgis server瓦片数据

    关注重点: 一般来说,geoserver是不支持arcgis server格式瓦片数据部署的,至少我本机的geoserver版本(2.8.5)以及之前的版本并没有集成进来,不知道目前官网的最新版是否支 ...

  7. 606. Construct String from Binary Tree

    You need to construct a string consists of parenthesis and integers from a binary tree with the preo ...

  8. 手动安装cloudera manager 5.x(tar包方式)详解

    官方共给出了3中安装方式:第一种方法必须要求所有机器都能连网,由于最近各种国外的网站被墙的厉害,我尝试了几次各种超时错误,巨耽误时间不说,一旦失败,重装非常痛苦.第二种方法下载很多包.第三种方法对系统 ...

  9. 从源码(编译)安装golang 二

    h1 { margin-top: 0.6cm; margin-bottom: 0.58cm; direction: ltr; color: #000000; line-height: 200%; te ...

  10. python net-snmp 的使用

    这一年一直在做一个综合管控平台的项目,用python写的,项目春节前可能就要进行实际部署了和测试,趁着这个空闲期,回顾一下项目中用到的一些技术,第一个就是SNMP协议. 项目结构主要是实现对ipran ...