javascript 对象

1.基于对象

  一切皆对象,以对象的概念来编程

2.面向对象的编程(oop,Object oriented programming)

  1.对象

  就是人们要研究的任何事物,不仅能表示具体事物。对象的规则,计划或事件

  属性的无序集合,每个属性可以存一个值(原始值,)

  2,对象的属性和行为

  属性:用数据值来描述他的状态

  方法:用来改变对象行为的方法

  3类

  具有相同或相似的性质的对象的抽象就是类,对象的类的具体化(实例化) 就叫做对象

  var diannao=‘’;//声明的是字符串

  var diannao=[];//声明的是数组

  var diannao={};//声明的是对象

//javascript对象创建,

  在对象里面属性(变量),方法(函数)之间都是要逗号隔开,不能用分号

var mac = { pingpai: '苹果笔记本', price: '10000元', color: '白色', qq:function () { alert( '能聊天' ) }, game:function () { alert('能玩游戏')} };

//直接调用属性
alert( mac.pingpai );

//函数不能直接alert.
mac.qq();

 //javascript对象创建,
//对象就是一堆变量和函数的集合体
//原生形式创建对象,json数据格式
var mac = {
pinpai: '苹果笔记本',
price: '10000元',
color: '白色',
qq: function () {
alert( '能聊天' )
},
game: function () {
alert( '能玩游戏' )
}
}; //直接调用属性
alert( mac.pinpai );
//还可以有以下的方式
alert( mac['pinpai'] ); //调用函数不能直接alert.
mac.qq();
mac['qq'](); //添加属性方法
mac.size = '16英寸';
mac.work = function () {
alert('办公');
}; //删除属性(变量)和方法(函数)
delete mac.color;
alert('苹果笔记本颜色'+mac.color);

  

  

创建声明对象

  对象可以随时删除和添加变量和函数

  1,json方法(javascript object notation)原生格式

    var obj={};

    json是一种数据格式

    其实json类型的数据可以传回一个整体的数据,是属性名:值类型,如果想要获取数据的话,就直接obj点的形式读取

    例子:网站请求---》数据库端查询----》查询出所有结果返回一个json格式----》用obj接收之后----》再选取适合的数据

      var obj={name:'准求的完美',age:{18},sex:'爷们'}

      alert(obj.name);

  2,构造函数的方法:

    function fun1(){

      this.name='名字';

    }

  3,Object方法

    var obj=new Object();

添加属性和方法

  如果属性的值是函数,我们叫做他是对象的方法 属性

  构造方法

    1,声明的时候添加

    2,声明以后再添加

  json方法

    1.声明的时候添加

      var obj={属性名:属性值,属性名2:属性值2,属性名3:属性值3,.......};

    2.声明以后再添加

  

对象属性的遍历

  for(var i in Object){

    Object[i]

  }

//遍历对象
//x就像是爬虫一样,遍历mac的所有变量和函数
for ( x in mac ) {
document.write( x + '=>' + mac[x] + '<br/>' );
}

  

javascript数组对象

方法

直接对数组进行操作

1删除或添加类

  1,,数组对象.push(数组元素.....)

    向数组的末尾添加新的元素,返回值是新数组的长度,可以一次添加多个元素

  2,数组对象.unshift(数组元素....)

    向数组的开头加入新的元素,返回值是新数组的长度,可以一次添加多个元素

  3,数组对象.pop()

    删除数组的最后一个元素,返回删除的元素

  4,数组对象.shift()

    删除数组的第一个元素,返回删除的元素

  5,万能的添加删除函数(用于插入,删除或者替换数组的元素。)

   数组元素.splice(起始位置,数量,添加的元素.....)

    (1)起始位置   从何处开始添加或删除,必须是数值类型(数组的下标)

    (2)数量        规定了删除的个数,如果是0,则不删除

    (3)需要添加的元素 ,可以当做替换的元素

    (4)如果从数组中删除了元素,则返回的是含有被删除的元素

不直接改变数组,产生新的结果

数组的转换

  数组.join(['分隔符'])

  把数组元素按照指定分隔符组成一个字符串,如果没有指定分隔符。默认是用“,”返回结果就是组合成的字符串

 var shuiguo = new Array( '苹果', '香蕉', '鸭梨', '火龙果', '西瓜', '葡萄', '蛇皮果' );
//将数组转换成字符串
var re = shuiguo.join( '&' );
document.write(re);

  

数组分隔

  数组。slice()包含开始,不包含结束

  从截取指定的开始位置,到结束位置(不包括)如果不指定结束位置,一直截取到最后,则从指定的开始位置的(数组的下标)

支持负数(-1开头)

返回新的数组

 //数组截取
var shuiguo = new Array( '苹果', '香蕉', '鸭梨', '火龙果', '西瓜', '葡萄', '蛇皮果' ); //从什么位置开始截取
var re = shuiguo.slice( 0, 3 );
document.write(re);

属性

1.length

  设置或返回数组元素的数目

Math对象(数学对象)

  取绝对值

    Math.abs(-6);

  四舍五入

    Math.round(2.5);

  向上取整

    var re=Math.ceil(2.35);

  向下取整

    var re=Math.floor(2.956);

  取随机数。(无限接近于0.无限接近于1)

    Math.random();

    取X到Y之间的随机数:Math。random()*(y-x)+x;

    取随机整数:Math.floor(Math.random()*(y+1-X)+x)

      在0-5之间随机数

        Math.random()*5;

      在10-15之间的随机数

        Math.random()*5+10;

1,练习自定义一个函数(删除数组的重复元素)

['a','d','c','c','b','h','y','h','h']

2.随机点名

3.30选7彩票抽奖效果

js基础知识之_对象的更多相关文章

  1. js基础知识之_入门变量和运算符

    js页面效果学习 (轮播图,文字滚动效果等等) javascript能来做什么 1.数据验证 2.将动态的内容写入网页中(ajax) 3.可以对时间做出响应 4.可以读写html中的内容 5.可以检测 ...

  2. js基础知识之_函数

    javascript函数 函数概念 将完成某一特定功能的代码集合起来,可以重复使用 白话函数理解-函数就是一个工厂,帮大家实现某一个功能 优点 -时程序更加简洁 -逻辑更有条例 -调用方便 -维护更加 ...

  3. js基础知识之_流程控制语句

    javascript 流程控制 流程控制:就是程序代码执行顺序 流程控制:通过规定的语句让程序代码有条件的按照一定的方式执行 顺序结构 按照书写顺序来执行,是程序中最基本的流程结构 选择结构(分支结构 ...

  4. Js基础知识7-Es6新增对象Map和set数据结构

    前言 JavaScript中对象的本质是键值对的集合,ES5中的数据结构,主要是用Array和Object,但是键只能是字符串.为了弥补这种缺憾,ES6带来了一种新的数据结构Map. Map也是键值对 ...

  5. [JS复习] JS 基础知识

    项目结尾,空闲时间,又把<JS 基础知识> 这本书过了一遍,温故知新后,很多知其然不知其所以然的内容 豁然开朗. [1. 用于范围的标签] display  :inline or bloc ...

  6. NodeJs>------->>第三章:Node.js基础知识

    第三章:Node.js基础知识 一:Node.js中的控制台 1:console.log.console.info  方法 console.log(" node app1.js 1> ...

  7. JS基础知识笔记

    2020-04-15 JS基础知识笔记 // new Boolean()传入的值与if判断一样 var test=new Boolean(); console.log(test); // false ...

  8. HTML+CSS+JS基础知识

    HTML+CSS+JS基础知识 目录 对HTML+CSS+JS的理解 基础知识 对HTML+CSS+JS的理解 基础知识 插入样式表的三种方式 外部样式表:<link rel="sty ...

  9. Node.js基础知识

    Node.js入门   Node.js     Node.js是一套用来编写高性能网络服务器的JavaScript工具包,一系列的变化由此开始.比较独特的是,Node.js会假设在POSIX环境下运行 ...

随机推荐

  1. 【转】 Android快速开发系列 10个常用工具类 -- 不错

    原文网址:http://blog.csdn.net/lmj623565791/article/details/38965311 转载请标明出处:http://blog.csdn.net/lmj6235 ...

  2. 给Apache加载rewrite模块后,服务器返回500错误,以及a2enmod命令

    我的机子是Ubuntu. 今天想给url做一个rewrite,让url看起来更漂亮一点.在Apache配置文件(我的是 /etc/apache/apache2.conf)文件中已经把AllOverri ...

  3. ARM学习笔记14——C语言和汇编相互套用

    这里,我们要准备两个文件,一个是汇编文件start.S,另一个是C文件led.c.汇编文件套用C文件中的开关灯函数,C文件套用汇编文件中延时函数. //start.S .global led_init ...

  4. How to compile pycrypto 2.4.1 (python 3.2.2 for Windows 7 x64)

    How to compile pycrypto 2.4.1 (python 3.2.2 for Windows 7 x64) Nov 10 Posted by alesk This note is a ...

  5. C语言volatile关键字

    volatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据.如果没有volatile关键字,则编译器可能优化读取和存储 ...

  6. CPSR和SPSR(转)

    转载地址:http://blog.chinaunix.net/uid-28458801-id-3487199.html CPSR:程序状态寄存器(current program status regi ...

  7. 中文字符串的编码转换(c实现)

    中文字符串在c/c++中表示为字节序列,在分词的时候需要根据不同的编码方式进行分词,一般分词器需要转换成统一的编码方式再进行转换,有些分词器如ICTCLAS在分词的时候可以不显示定义编码方式,可以检测 ...

  8. 模仿GsonConverter 写的StringConverter 解析String字符串

    使用自己写的StringConverter 来封装的 Converter 来解析String private static final RestAdapter CAMERA_CLIENT_NETWOR ...

  9. Android开发之50个常见实用技巧——添加悦目的动画效果

    Hack.5 使用TextSwitcher和ImageSwitcher实现平滑过渡 实现步骤: 1.通过findViewById()方法获取TextSwitcher对象的引用Swithcer,当然也可 ...

  10. JavaBean以及MVC模式

    JavaBean,  咖啡豆. JavaBean是一种开发规范,可以说是一种技术. JavaBean就是一个普通的java类.只有符合以下规定才能称之为javabean: 1)必须提供无参数的构造方法 ...