Javascript初学篇章_5(对象)
对象
Javascript是一种面向对象的语言,因此可以使用面向对象的思想来进行
javascript程序设计对象就是由一些彼此相关的属性和方法集合在一起而构成的一个数据实体。
举个例子,一只猫是个对象,它有属性颜色、身高之类,而它的方法就有抓老鼠。
本地对象
1.Date 日期对象用来处理日期和时间。
在《Javascript初学篇章_1》中就有提到过
var myDate = new Date();
myDate.getFullYear(); //获取完整的年份(4位,1970-????)
myDate.getMonth(); //获取当前月份(0-11,0代表1月)
myDate.getDate(); //获取当前日(1-31)
myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
myDate.getHours(); //获取当前小时数(0-23)
myDate.getMinutes(); //获取当前分钟数(0-59)
myDate.getSeconds(); //获取当前秒数(0-59)
myDate.getMilliseconds(); //获取当前毫秒数(0-999)
myDate.toLocaleDateString(); //获取当前日期
var mytime=myDate.toLocaleTimeString(); //获取当前时间
myDate.toLocaleString(); //获取日期与时间
例
//在页面输入本地时间
function time() {
var today = new Date();
var week = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']
var myDate = today.getHours() + "年" + today.getMonth() + "月" + today.getDate() + "日 "+ today.getHours() + ":" + today.getMinutes() + ":" + today.getSeconds() + " " + week[today.getDay()];
document.write( myDate );
}
2.Math 对象
Math 对象用来处理复杂的数学运算。
Math对象是javascript的一个全局对象,不需要用new 创建
Math.abs(-2);// 该方法可返回一个数的绝对值。 Math.round(5.5); // 该方法可把一个数字舍入为最接近的整数。 Math.random(); // 该方法可返回介于 0(包含) ~ 1(不包含) 之间的一个随机数。 Math.ceil(1.4); // ceil() 方法返回大于等于x的最小整数。(取大整),即向上取整 Math.floor(1.6); // floor() 方法返回小于等于x的最大整数。(取小整),即向下取整 Math.pow(4,3); // pow() 方法返回 x 的 y 次幂。 (4的3次方)
例
//当Math.random()获得的随机数为1时,获得特等奖
function reward(){
var i=1;
if(i==Math.floor(Math.random()*10)){
alert("恭喜特等奖!");
}
else{
alert("谢谢参与。");
}
}
3.Array 数组对象
定义数组的 3种方式
var week = new Array();
var week = new Array(‘星期一’ , ‘星期二, ‘星期三’);
var week = (‘星期一’ , ‘星期二, ‘星期三’);
常用方法:
获取数组的长度 .length:
alert(week.length);
获取数组下标所对应的值:
alert(week[0]);
例
//调用函数后会用for循环弹出星期一到星期天,但不弹出今天的值
function alertWeek(){
var today=new Date();
var week = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']
for(var i=0;i<week.length;i++){
//getDay获取本机星期,当条件成立时,跳过本次循环
if(i==today.getDay()){
continue;
}
alert(week[i]);
}
}
数组元素添加:
将一个或多个新元素添加到数组结尾,并返回数组新长度
var week_len = week.push(‘星期四’,‘星期五’);
将一个或多个新元素添加到数组开始,数组中的元素自动后移,返回数组新长度
var week_len = week.unshift(‘星期日’);
将一个或多个新元素插入到数组的指定位置,插入位置的元素自动后移,返回""。
arr3.splice(0,0,“abc”);
document.write(arr3[0]);
数组元素删除:
var del = ["aa",23,345,56,34,"bb"];
var del_last = del.pop(); //移除最后一个元素并返回该元素值
var del_first = del.shift(); //移除最前一个元素并返回该元素值,数组中元素自动前移
var del_arr = del.splice(0,2); //删除从指定位置deletePos开始的指定数量deleteCount的元素,数组形式返回所移除的元素
document.write(del_arr);
4. String 对象
String 对象用来处理文本。
事实上任何一个字符串常量都是一个String对象,可以将其直接作为对象来使用。
获得字符串长度:
1.length属性
var str = “hello”;
var str2 = “你好”;
alert(str.length); //输出 5
alert(str2.length); //输出 2
提取字符串:
1.charAt()方法
var str = "HELLO WORLD";
var n = str.charAt(2); //返回指定位置的字符。
2.substr()方法、substring()方法
function hidden(){
var title="1234567890abcdefghij12345";
alert(title.substr(0,10)+"……");//输出1234567890
alert(title.substring(10,20)+"……");//输出abcdefghij
}
查找替换字符串:
1. indexOf()和lastIndex()方法
var str="Hello world, welcome to the universe.";
alert(str.indexOf(“welcome”);//可返回某个指定的字符串值在字符串中首次出现的位置。
alert(str.lastIndexOf(‘e’)); //查找字符最后一次出现的位置
2. replace()方法
var str="Visit Microsoft!";
var n=str.replace("Microsoft","W3CSchool");
//用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
3. search()方法
var str="Visit W3CSchool!";
var n=str.search(“W3CSchool”);
//查找指定的字符串或与正则表达式相匹配的子字符串
拼接字符:
1.concat
var str1 = "Hello ";
var str2 = "world!";
var n = str1.concat(str2); //concat() 方法用于连接两个或多个字符串。
2.字符串拼接符
var str1 = str1 + str2; //+号判断左右两边,如果有一边是字符串,则该+号为拼接作用
其他方法:
1.toLowerCase() 方法
var str="Hello World!”;
document.write(str.toLowerCase());//用于把字符串转换为小写
2.toUpperCase() 方法
var str="Hello world!";
document.write(str.toUpperCase());//用于把字符串转换为大写。
Javascript初学篇章_5(对象)的更多相关文章
- Javascript初学篇章_1(概念/数据类型)
Javascript是一门脚本语言,主要由浏览器来执行.它可以说是页面的灵魂,让页面活过来.与之前学的HTML5+CSS样式的不同之处就在于,JS能让静态网页成为一个动态网页,实现与用户的互动. Ja ...
- Javascript初学篇章_8(事件)
事件 HTML 事件是发生在 HTML 元素上的事情.例如用户点击按钮时,点击也是一个事件.事件可以用于处理表单验证,用户输入,用户行为及浏览器动作,如: 页面加载时触发事件 页面关闭时触发事件 用户 ...
- Javascript初学篇章_7(DOM)
DOM 文档对象模型DOM (document object model) 文档对象模型,它定义了操作文档对象的接口.DOM 把一份html文档表示为一棵家谱树,使用parent(父), child( ...
- Javascript初学篇章_6(BOM)
BOM 浏览器对象模型 BOM (浏览器对象模型),它提供了与浏览器窗口进行交互的对象 一.window对象 Window对 象表示整个浏览器窗口. 1.系统消息框 alert() alert('he ...
- Javascript初学篇章_4(循环与函数)
七.循环语句 1.While 语法: while (exp){ //statements; } 说明: while (变量<=结束值){ 需执行的代码 } 例: var i=0; while(i ...
- Javascript初学篇章_3(注释/if/switch)
五.javascript的注释 // 单行注释 /* …*/ 多行注释 注:多行注释不能互相嵌套 六.程序流程控制 一.条件语句 if 语法: if(condition) statements1 el ...
- CSS3初学篇章_5(背景样式/列表样式/过渡动画)
背景样式 1.背景颜色语法:background-color : transparent | color body { background-color:#CCCCCC;} 2.渐变色彩语法:back ...
- Javascript初学篇章_2(数据类型的查看和转换/运算符)
三.数据类型的查看和转换 1.查看数据类型 typeof 说明:typeo可以查看变量的类型. 语法:alert(typeof 变量名或数据): 2.转换成字符串 var married = fal ...
- javascript json字符串与对象相互转换
在实际项目中,经常遇到字符格式的问题,记下来以便日后方便查看.用到两个函数:JSON.stringify() 和 JSON.parse(). 使用ajax向后台请求数据,后台给前端返回数据,明明后端脚 ...
随机推荐
- 【经验】在CSS中定义超链接样式a:link、a:visited、a:hover、a:active的顺序
以前用CSS一直没有遇到过这个问题,在最近给一个本科同学做的项目里面.出现一些问题,搜索引擎查了一些网站和资料,发现很多人问到这个问题,给出的结果我试了试,大部分都不正确. 给出我试的顺序,可能会对大 ...
- 《UNIX环境高级编程第三版》apue.h等源码文件的编译安装
操作系统:Ubuntu 12/14 1.下载书中的源代码:点击下载 2.编译 tar -zxvf *.tar.gz cd ./apue.3e make 报错: can,t find -lbsd 解决办 ...
- Java 8之二小坑:stream parallel 和 lamada
Stream:parallel乱序 Java 8 stream流为处理集合时非常方便.遇到的一个坑是为了提高在多核cpu下的性能,尝试了parallel().数据源是HashSet的,在做分割的时候发 ...
- 好代码系列(一):LazyObject
site-packages/django/utils/functional.py def new_method_proxy(func): def inner(self, *args): if self ...
- 配置nginx+php
一般这样配置 此时很多教程会教大家这样配置Nginx+PHP: server { listen 80; server_name foo.com; root /path; location / { in ...
- MiniProfiler(MiniProfiler.EF6监控调试MVC5和EF6的性能)
git: https://github.com/MiniProfiler 以前开发Webform的时候可以开启trace来跟踪页面事件,这对于诊断程序的性能是有很大的帮助的,起到事半功倍的作用,今天 ...
- 模拟搭建Web项目的真实运行环境(二)
上一节已经介绍了如何在虚拟机中部署测试环境,接下来将介绍怎么在ubuntu下部署redis. 一.在ubuntu安装Xrdp + Vnc 为了在以后可以通过windows系统来远程操作ubuntu ...
- BubbleSort冒泡排序
#include <stdio.h>void BubbleSort(int *a,int n);int main(void){ int arr[10] = {2,4,6,8,0,1,3,5 ...
- HTTP错误500.19-定义了重复的节点
打开服务器的asp.net页面时出现这个错误: HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效. 解决办法: 打开II ...
- Borland C++建立工程菜鸟教程
实在不敢相信,学校里现在教学用的编译器还是七八十年代的老古董,难道这东西更能培养从没接触过代码的学生深刻理解c语言的运行流程,不得不说像VisualStdio这样的重量级开发环境确实屏蔽了很多底层的运 ...