热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

pythonjavascript一起开发_Python开发14——JavaScript

JavaScript的对象简介:在JavaScript中除了null和undefined以外其他的数据类型都被定义成了对象,也可以用创建对象的方法定义变

Javascript的对象

简介:

在Javascript中除了null和undefined以外其他的数据类型都被定义成了对象,也可以用创建对象的方法定义变量,String、 Math、Array、Date、RegExp都是Javascript中重要的内置对象,在Javascript程序大多数功能都是基于对象实现的。

var aa=Number.MAX_VALUE;

//利用数字对象获取可表示最大数

var bb=new String("hello Javascript");

//创建字符串对象

var cc=new Date();

//创建日期对象

var dd=new Array("星期一","星期二","星期三","星期四");

//数组对象

一、String对象

1、字符串对象创建(两种方式)

① 变量 = “字符串”

② 字串对象名称 = new String (字符串)

var str1="hello world";

var str1= new String("hello word");

2、字符串对象的属性和函数

x.length ----获取字符串的长度

x.toLowerCase() ----转为小写

x.toUpperCase() ----转为大写

x.trim() ----去除字符串两边空格

----字符串查询方法

x.charAt(index) ----str1.charAt(index);----获取指定位置字符,其中index为要获取的字符索引

x.indexOf(findstr,index)----查询字符串位置

x.lastIndexOf(findstr)

x.match(regexp) ----match返回匹配字符串的数组,如果没有匹配则返回null

x.search(regexp) ----search返回匹配字符串的首字符位置索引

示例:

var str1="welcome to the world of JS!";

var str2=str1.match("world");

var str3=str1.search("world");

alert(str2[0]); // 结果为"world"

alert(str3); // 结果为15

----子字符串处理方法

x.substr(start, length) ----start表示开始位置,length表示截取长度

x.substring(start, end) ----end是结束位置

x.slice(start, end) ----切片操作字符串

示例:

var str1="abcdefgh";

var str2=str1.slice(2,4);

var str3=str1.slice(4);

var str4=str1.slice(2,-1);

var str5=str1.slice(-3,-1);

alert(str2); //结果为"cd"

alert(str3); //结果为"efgh"

alert(str4); //结果为"cdefg"

alert(str5); //结果为"fg"

x.replace(findstr,tostr) ---- 字符串替换

x.split(); ----分割字符串

var str1="一,二,三,四,五,六,日";

var strArray=str1.split(",");

alert(strArray[1]);//结果为"二"

x.concat(addstr) ---- 拼接字符串

二、Array对象

1、数组创建

创建数组的三种方式:

创建方式1:

var arrname = [元素0,元素1,….]; // var arr=[1,2,3];

创建方式2:

var arrname = new Array(元素0,元素1,….); // var test=new Array(100,"a",true);

创建方式3:

var arrname = new Array(长度);

// 初始化数组对象:

var cnweek=new Array(7);

cnweek[0]="星期日";

cnweek[1]="星期一";

...

cnweek[6]="星期六";

创建二维数组:

var cnweek=new Array(7);

for (var i&#61;0;i<&#61;6;i&#43;&#43;){

cnweek[i]&#61;new Array(2);

}

cnweek[0][0]&#61;"星期日";

cnweek[0][1]&#61;"Sunday";

cnweek[1][0]&#61;"星期一";

cnweek[1][1]&#61;"Monday";

...

cnweek[6][0]&#61;"星期六";

cnweek[6][1]&#61;"Saturday";

2、数组对象的属性和方法

① join方法&#xff1a;

x.join(bystr) &#xff0d;&#xff0d;&#xff0d;&#xff0d;将数组元素拼接成字符串

var arr1&#61;[1, 2, 3, 4, 5, 6, 7];

var str1&#61;arr1.join("-");

alert(str1); //结果为"1-2-3-4-5-6-7"

②concat方法&#xff1a;

x.concat(value,...) &#xff0d;&#xff0d;&#xff0d;&#xff0d;

var a &#61; [1,2,3];

var b&#61;a.concat(4,5) ;

alert(a.toString()); //返回结果为1,2,3

alert(b.toString()); //返回结果为1,2,3,4,5

③数组排序-reverse sort&#xff1a;

//x.reverse()

//x.sort()

var arr1&#61;[32, 12, 111, 444];

//var arr1&#61;["a","d","f","c"];

arr1.reverse(); //颠倒数组元素

alert(arr1.toString());

//结果为444,111,12,32

arr1.sort(); //排序数组元素

alert(arr1.toString());

//结果为111,12,32,444

//------------------------------

arr&#61;[1,5,2,100];

//arr.sort();

//alert(arr);

//如果就想按着数字比较呢?

function intSort(a,b){

if (a>b){

return 1;//-1

}

else if(a

return -1;//1

}

else {

return 0

}

}

arr.sort(intSort);

alert(arr);

function IntSort(a,b){

return a-b;

}

④数组切片操作&#xff1a;

//x.slice(start, end)

//

//使用注解

//

//x代表数组对象

//start表示开始位置索引

//end是结束位置下一数组元素索引编号

//第一个数组元素索引为0

//start、end可为负数&#xff0c;-1代表最后一个数组元素

//end省略则相当于从start位置截取以后所有数组元素

var arr1&#61;[&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;,&#39;e&#39;,&#39;f&#39;,&#39;g&#39;,&#39;h&#39;];

var arr2&#61;arr1.slice(2,4);

var arr3&#61;arr1.slice(4);

var arr4&#61;arr1.slice(2,-1);

alert(arr2.toString());

//结果为"c,d"

alert(arr3.toString());

//结果为"e,f,g,h"

alert(arr4.toString());

//结果为"c,d,e,f,g"

⑤删除子数组&#xff1a;

//x. splice(start, deleteCount, value, ...)

//使用注解

//x代表数组对象

//splice的主要用途是对数组指定位置进行删除和插入

//start表示开始位置索引

//deleteCount删除数组元素的个数

//value表示在删除位置插入的数组元素

//value参数可以省略

var a &#61; [1,2,3,4,5,6,7,8];

a.splice(1,2);

alert(a.toString());//a变为 [1,4,5,6,7,8]

a.splice(1,1);

alert(a.toString());//a变为[1,5,6,7,8]

a.splice(1,0,2,3);

alert(a.toString());//a变为[1,2,3,5,6,7,8]

⑥数组的push和pop&#xff1a;

//push pop这两个方法模拟的是一个栈操作

//x.push(value, ...) 压栈

//x.pop() 弹栈

//使用注解

//

//x代表数组对象

//value可以为字符串、数字、数组等任何值

//push是将value值添加到数组x的结尾

//pop是将数组x的最后一个元素删除

var arr1&#61;[1,2,3];

arr1.push(4,5);

alert(arr1);

//结果为"1,2,3,4,5"

arr1.push([6,7]);

alert(arr1)

//结果为"1,2,3,4,5,6,7"

arr1.pop();

alert(arr1);

//结果为"1,2,3,4,5"

⑦数组的shift和unshift&#xff1a;

//x.unshift(value,...)

//x.shift()

//使用注解

//x代表数组对象

//value可以为字符串、数字、数组等任何值

//unshift是将value值插入到数组x的开始

//shift是将数组x的第一个元素删除

var arr1&#61;[1,2,3];

arr1.unshift(4,5);

alert(arr1); //结果为"4,5,1,2,3"

arr1. unshift([6,7]);

alert(arr1); //结果为"6,7,4,5,1,2,3"

arr1.shift();

alert(arr1); //结果为"4,5,1,2,3"

⑧总结js的数组特性&#xff1a;

// js中数组的特性

//java中数组的特性, 规定是什么类型的数组,就只能装什么类型.只有一种类型.

//js中的数组特性1: js中的数组可以装任意类型,没有任何限制.

//js中的数组特性2: js中的数组,长度是随着下标变化的.用到多长就有多长.

var arr5 &#61; [&#39;abc&#39;,123,1.14,true,null,undefined,new String(&#39;1213&#39;),new Function(&#39;a&#39;,&#39;b&#39;,&#39;alert(a&#43;b)&#39;)];

/* alert(arr5.length);//8

arr5[10] &#61; "hahaha";

alert(arr5.length); //11

alert(arr5[9]);// undefined */

三、Date对象

1、创建Date对象

//方法1&#xff1a;不指定参数

var nowd1&#61;new Date();

alert(nowd1.toLocaleString( ));

//方法2&#xff1a;参数为日期字符串

var nowd2&#61;new Date("2004/3/20 11:12");

alert(nowd2.toLocaleString( ));

var nowd3&#61;new Date("04/03/20 11:12");

alert(nowd3.toLocaleString( ));

//方法3&#xff1a;参数为毫秒数

var nowd3&#61;new Date(5000);

alert(nowd3.toLocaleString( ));

alert(nowd3.toUTCString());

//方法4&#xff1a;参数为年月日小时分钟秒毫秒

var nowd4&#61;new Date(2004,2,20,11,12,0,300);

alert(nowd4.toLocaleString( ));//毫秒并不直接显示

2、Date对象的方法—获取日期和时间

获取日期和时间

getDate() 获取日

getDay () 获取星期

getMonth () 获取月(0-11)

getFullYear () 获取完整年份

getYear () 获取年

getHours () 获取小时

getMinutes () 获取分钟

getSeconds () 获取秒

getMilliseconds () 获取毫秒

getTime () 返回累计毫秒数(从1970/1/1午夜)

练习&#xff1a;

function getCurrentDate(){

//1. 创建Date对象

var date &#61; new Date(); //没有填入任何参数那么就是当前时间

//2. 获得当前年份

var year &#61; date.getFullYear();

//3. 获得当前月份 js中月份是从0到11.

var month &#61; date.getMonth()&#43;1;

//4. 获得当前日

var day &#61; date.getDate();

//5. 获得当前小时

var hour &#61; date.getHours();

//6. 获得当前分钟

var min &#61; date.getMinutes();

//7. 获得当前秒

var sec &#61; date.getSeconds();

//8. 获得当前星期

var week &#61; date.getDay(); //没有getWeek

// 2014年06月18日 15:40:30 星期三

return year&#43;"年"&#43;changeNum(month)&#43;"月"&#43;day&#43;"日 "&#43;hour&#43;":"&#43;min&#43;":"&#43;sec&#43;" "&#43;parseWeek(week);

}

alert(getCurrentDate());

//解决 自动补齐成两位数字的方法

function changeNum(num){

if(num <10){

return "0"&#43;num;

}else{

return num;

}

}

//将数字 0~6 转换成 星期日到星期六

function parseWeek(week){

var arr &#61; ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

// 0 1 2 3 .............

return arr[week];

}

3、Date对象的方法—设置日期和时间

//设置日期和时间

//setDate(day_of_month) 设置日

//setMonth (month) 设置月

//setFullYear (year) 设置年

//setHours (hour) 设置小时

//setMinutes (minute) 设置分钟

//setSeconds (second) 设置秒

//setMillliseconds (ms) 设置毫秒(0-999)

//setTime (allms) 设置累计毫秒(从1970/1/1午夜)

var x&#61;new Date();

x.setFullYear (1997); //设置年1997

x.setMonth(7); //设置月7

x.setDate(1); //设置日1

x.setHours(5); //设置小时5

x.setMinutes(12); //设置分钟12

x.setSeconds(54); //设置秒54

x.setMilliseconds(230); //设置毫秒230

document.write(x.toLocaleString( )&#43;"
");

//返回1997年8月1日5点12分54秒

x.setTime(870409430000); //设置累计毫秒数

document.write(x.toLocaleString( )&#43;"
");

//返回1997年8月1日12点23分50秒

4、Date对象的方法—日期和时间的转换

日期和时间的转换:

getTimezoneOffset():8个时区×15度×4分/度&#61;480;

返回本地时间与GMT的时间差&#xff0c;以分钟为单位

toUTCString()

返回国际标准时间字符串

toLocalString()

返回本地格式时间字符串

Date.parse(x)

返回累计毫秒数(从1970/1/1午夜到本地时间)

Date.UTC(x)

返回累计毫秒数(从1970/1/1午夜到国际时间)

四、Math对象

//该对象中的属性方法 和数学有关.

abs(x) 返回数的绝对值。

exp(x) 返回 e 的指数。

floor(x)对数进行下舍入。

log(x) 返回数的自然对数(底为e)。

max(x,y) 返回 x 和 y 中的最高值。

min(x,y) 返回 x 和 y 中的最低值。

pow(x,y) 返回 x 的 y 次幂。

random() 返回 0 ~ 1 之间的随机数。

round(x) 把数四舍五入为最接近的整数。

sin(x) 返回数的正弦。

sqrt(x) 返回数的平方根。

tan(x) 返回角的正切。

//方法练习:

//alert(Math.random()); // 获得随机数 0~1 不包括1.

//alert(Math.round(1.5)); // 四舍五入

//练习&#xff1a;获取1-100的随机整数&#xff0c;包括1和100

//var num&#61;Math.random();

//num&#61;num*10;

//num&#61;Math.round(num);

//alert(num)

//&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;max min&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;&#61;

/* alert(Math.max(1,2));// 2

alert(Math.min(1,2));// 1 */

//-------------pow--------------------------------

alert(Math.pow(2,4));// pow 计算参数1 的参数2 次方.

五、Function 对象(重点)

1、函数的定义

function 函数名 (参数){

函数体;

return 返回值;

}



推荐阅读
author-avatar
huanghxn
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有