js学习——对象基础
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js学习——对象基础相关的知识,希望对你有一定的参考价值。
javascript是面向对象的语言。JavaScript中的所有事物都是对象,但是不使用类,它是基于原型(prototype)。对象是一种特殊的数据,拥有属性和方法。
创建JavaScript对象
方式1. 定义并创建对象实例
var person=new Object();//创建对象的一个新实例 person.name="name";//添加name属性 person.age=10;//添加age属性 //另一个方法 var person={name:"name", age:10}; person.eyecolor = "blue";//通过赋值为已经存在的对象添加新属性
方式2. 利用对象构造器
就像C++里面的构造函数,函数名和类名一致
//对象构造器 function person(name, age) { this.name = name; this.age = age; //方法:在对象内的函数 this.changeName = changeName; function changeName(name){ this.name = name; } } //创建实例 var myPerson = new person("name", 10);
Number对象
JavaScript只有一种数字类型,所有数字均为64位,都是浮点类型
- 精度:整数(最多15位),小数(最多17位)
- 进制
var y = 0377; //0开头表示8进制
var x = 0xff;//0x表示16进制
var z = 10;//默认为10进制
number.toString(16);//用toString()方法可以输出不同进制的数
- 特殊值
无穷大: myNumber = Infinity; //有正负无穷大
非数字值:myNumber = NaN; isNaN(myNumber);//是否是NaN值
字符串(String)对象
赋值 |
var str = "str";//可以用双引号 var str = ‘str‘;//可以用单引号 |
访问 | var character = str[1];//用下标来访问字符串中的字符 |
长度 | var lenth = str.length;//length属性来计算字符串长度 |
查找定位 |
var n = str.indexOf("abc");//定位abc在str中第一次出现的位置,没有找到则返回-1 var str = "aabc"; var obj = str.match("abc");//在str中查找字符串abc,并返回查找的结果对象,只匹配一次 obj结果: ["abc", index: 1, input:"aabc", length:3] [要查找的字符串,查找的字符串在str中出现的位置,输入的字符串] |
替换 | var n = str.replace("a", "b");//把str中的a替换成b,只替换第一个a,返回替换后的字符串 |
大小写变化 |
var up = str.toUpperCase();//全部转换成大写 var low = str.toLowerCase();//全部转换成小写 |
转换成数组 |
var sstr = str.split(",");//把字符串根据,将其分割存成数组 |
Date日期对象 用数字表示的月份会比实际小1,也就是0=1月份
获取 |
var date = new Date();//当前日期和时间 var year = date.getFullYear();//获取年份 var day = date.getDay();//获取日... |
创建 |
var date = new Date();//当前日期和时间 var date = new Date(1000);//在1970.01.01上午8点后1000毫秒的日期 var date = new Date("October 13, 1975 11:13:00");//根据string来得到日期 var date = new Date(year, month, day, hours, minutes, seconds, milliseconds); //month=2,最后设置成3月份 |
设置 |
var date = new Date(); date.setFullYear(2010,0,14);//月份设置为0,实际上为1 |
比较 |
var date1 = new Date(); var date2 = new Date(); if(date1 == date2){} |
Array数组对象
创建数组 |
1. var arr=new Array(); arr[0] = 0;arr[1]=1; 2. var arr=new Array(0,1); 3. var arr=[0,1]; |
访问数组 | arr[0] = 1;//用下标来访问 |
数组中可以有不同对象 (与python类似) |
var arr=new Array(); arr[0] = 0; arr[1] = "1"; |
元素个数 | var n = arr.length; |
定位 | var n = arr.indexOf(0); |
Boolean对象 代表两个值true或false
var b = new Boolean();//0 -1 null "" false undefined NaN都表示false
Math对象 执行常见的算数任务
四舍五入 | var d = Math.round(2.4); |
随机数 | var d = Math.random(); |
最大/小值 |
var d = Math.max(1,2,3,4); var d = Math.min(1,2,3,4); |
常量 |
Math.PI Math.E Math.sqrt(16);根号16 Math.SQRT2根号2 Math.SQRT1_2根号1/2 Math.LN2 Math.LN10 e为底 Math.LOG2E 2为底 Math.LOG10E 10为底 |
BOM浏览器对象模型
window浏览器窗口
- window.screen用户屏幕信息,可不用window作前缀
- window.location当前页面的url,可不用window作前缀
- window.history浏览器的历史,可不用window作前缀
- window.navigator浏览器的信息,如名称、版本、语言等,可不用window作前缀
弹窗
警告框: alert("no! error!")
确认框:var r = comfirm("请确认");//确认=true 取消=false
提示框:prompt("输入的提示信息","默认值");//提示用户输入信息
计时事件
var interval = setInterval(funName,3000);//每3000毫秒循环执行funName函数
clearInterval(interval);//停止interval的循环执行
var timeout = setTimeOut(funName, 2000)//经过2000毫秒后执行一次funName函数,不循环
clearTimeOut(timeout);//取消这个执行
以上是关于js学习——对象基础的主要内容,如果未能解决你的问题,请参考以下文章