js的内部类
JavaScript中本身提供一些,可以直接使用的类,这种类就是内部类。主要有:
Object/Array/Math/Boolean/String/RegExp/Date/Number共8个内部类。
内部类的分类:
从使用方式,把js内部类分为两类(动态类,静态类)。
静态类 使用 类名.属性|方法
比如Math
动态类 使用 var 对象=new 动态类() 对象.属性|方法
- //Math
- window.alert(Math.abs(-12));
- //Date
- //显示当前的日期
- var nowdate=new Date();
- window.alert(nowdate.toLocaleString());//按照一定格式显示。
Math常用的函数
1.abs(x)返回数的绝对值
2.ceil(x)对一个数进行上舍入
3.floor(x)对一个数进行下舍入
4.max(x,y)求x,y中较大的数
5.min(x,y)求x,y中较小的数
6.round(x)对x进行四舍五入
7.random()一个大于0小于1的16位小数位的数字。
- window.alert(Math.abs(-12));
- //Date
- //显示当前的日期
- var nowdate=new Date();
- window.alert(nowdate.toLocaleString());
- alert(Math.ceil(4.5));
- alert(Math.floor(4.5));
- alert(Math.round(4.7));
- alert(Math.round(4.49));
- alert(Math.random());
- alert(parseInt(Math.random()*100));
- alert(Math.round(Math.random()*100));
js内部类--Date类
- //Date的常用方法
- //window.alert(new Date().toLocaleString());
- /*var date=new Date();
- window.alert(date);
- window.alert(date.getYear()+" "+date.getMonth());*/
- function showHello(date){
- //小时
- var hour=date.getHours();
- //分钟
- var minute=date.getMinutes();
- //1. 思路 把小时和分钟转成 距离00:00的秒数(小时数)
- //alert(new Date().toLocaleString());
- /*alert(hour);
- alert(minute);*/
- //把秒数考虑进去
- var mysecond=hour*3600+minute*60;
- if(mysecond>=6*3600&&mysecond<=9*3600){
- window.alert("早上好");
- }else if(mysecond>=17*3600+31*60&&mysecond<=18*3600+40*60){
- window.alert("傍晚好");
- }
- /*var nowTime=date.getHours()+date.getMinutes();
- if((nowHour>=6&&nowHour<9)||(nowHour==9&&minute==0)){
- window.alert("早上好");
- }else if(nowHour>=6&&nowHour<9){
- }*/
String类
String是动态类,提供了对字符串的各种操作,下面介绍几个常用的函数。
split();分割字符串。
substr(start,length):从位置start开始截取length个字符
substring(start,end):从位置start开始截取到字符直到end-1结束。
- var str="abcd12345";
- window.alert(str.length);
- var str2="abc def oop";
- var arr=str2.split(" ");//如果是split("")则按字符分割。
- window.alert(arr);
- var str3="abcdef";
- window.alert(str3.substr(2,3));//cde
- window.alert(str3.substring(2,3));//c
- var str4="abcd";
- window.alert("charAt"+str4.charAt(3));
运行结果:
abc def oop
cde
c
d
indexOf的用法
indexOf(str,start)
从位置start开始寻找字符串str,默认情况下start是0(不写的时候),如果找到则返回字符串出现的位置,否则返回-1.
String是一个动态类。
- var str5="ab 123 56 123 ab";
- window.alert("position:"+str5.indexOf("ab",1));//支持汉字查询
返回14.
Array类
是动态类
看看常用的方法:
pop()删除一个元素并返回最后一个元素
push()添加一个元素
- var myarr=new Array();
- window.alert(myarr.length);
- //动态地添加数据
- myarr[0]="sp";
- myarr[1]=90;
- window.alert(myarr.length+" "+myarr);
- //删除数组中的元素
- myarr.pop();
- window.alert(myarr.length+" "+myarr);
- myarr.push("abcd");
- window.alert(myarr.length+" "+myarr);
输出结果:0
2 sp,90
1 sp
2 sp,abcd
var arr=new Array(2);
window.alert(arr.length);
arr[0]=1;
arr[1]="a";
arr[2]=2.3;
window.alert(arr.length);
window.alert(arr[3]);
//arr[10]="hello";//不要跳过下标赋值,虽然不会报错并且在第10个位置插入了元素,但是不利于程序
arr['a']="ok";
window.alert(arr.length+" "+arr);
window.alert(arr['a']);
输出:
2
3
undefined
3 2,3,undefined
ok
虽然有arr['a']="ok";这条语句插入了一个元素,但是数组元素个数却没有增加。
js中允许这样访问变量
- function Person(){
- this.name="xiao";
- this.show=function(){
- window.alert("hello");
- }
- }
- var p=new Person();
- document.writeln(p.name);
- document.writeln(p["name"]);
js的内部类的更多相关文章
- JavaScript基础--内部类(九)
js的内部类javascript 中本身提供一些,可以直接使用的类,这种类就是内部类,主要有:ObjectArrayMathBooleanStringRegExpDateNumber 1.内部类分类从 ...
- javascript 学习笔记 -内部类
js的内部类 javascript内部有一些可以直接使用的类 javascript主要有以下 object Array Math boolean String D ...
- Ext JS 4 的类系统
前言 我们知道,JavaScript中没有真正的类,它是一种面向原型的语言 .这种语言一个强大的特性就是灵活,实现一个功能可以有很多不同的方式,用不同的编码风格和技巧.但随之也带来了代码的不可预测和难 ...
- JavaScript(转载自 计科学院 慕课网)
什么是脚本语言? ①脚本语言介于HTML和C,C++,Java,C#等编程语言之间 ②脚本语言与编程语言有相似地方,其函数与编程语言类似,也有变量.与编程语言之间最大的区别是编程语言的语法和规则更为严 ...
- JS中的内部类
js内部类 javascript中本身有提供一些可以直接使用的类,这种类就是内部类.主要有:Object.Array.Math.Boolean.String.Number.Date.RegExp. ...
- js闭包vs Java内部类
前言: 昨天写了一个关于Java内部的博客,在内部类的最后一点中谈到了Java闭包的概念,他是这样定义闭包的:闭包是一个可调用的对象,它记录了一些信息,这些信息来自创建它的作用域.结合Java的内部类 ...
- js闭包与java内部类
在js中闭包用的比较广泛,主要解决变量作用域导致的问题.
- JS的Object漫想:从现象到“本质”
转自:http://zzy603.iteye.com/blog/973649 写的挺好,用于记录,把对象分成概念的Object(var f={})和 类的Object(function F(){}) ...
- js 基础
js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划():避 ...
随机推荐
- 【SharePoint】K2 for SharePoint 安装笔记【未完工】
0.安装环境说明 0.1.软件版本 OS : Window Server 2012 标准版 SharePoint : 2013标准版 K2 : 4.6.9 0.2.环境结构 SharePoint 20 ...
- vue组件class绑定
当在一个自定义组件上使用 class 属性时,这些类将被添加到该组件的根元素上面.这个元素上已经存在的类不会被覆盖. 例如,如果你声明了这个组件: Vue.component('my-componen ...
- vs调试,监控变量
- setTimeout()基础/setInterval()基础
JavaScript提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()和setInterval()这两个函数来完成.它们向任务队列添加定时任务.初始接触它的人都觉得好简单 ...
- HBase——完全分布
实际上,在真实环境中你需要使用完全分布配置完整测试HBase.在一个分布式配置中,集群有多个节点,每个节点运行一个或多个HBase守护进程.其中包括主Master和备份Master实例,多个Zooke ...
- FZU 2124 FOJ 2124 吃豆人【BFS】
Problem 2124 吃豆人 Accept: 134 Submit: 575 Time Limit: 1000 mSec Memory Limit : 32768 KB Probl ...
- gitlab多人协同工作
gitlab多人协同工作 本文为亨利向<Git权威指南>的作者蒋鑫老师的答疑邮件写成. 这里特别感谢蒋鑫老师对我询问gitlab的协同工作流程问题的详细解答. 蒋鑫老师的细致专业的解答让我 ...
- Linux内核源码分析方法_转
Linux内核源码分析方法 转自:http://www.cnblogs.com/fanzhidongyzby/archive/2013/03/20/2970624.html 一.内核源码之我见 Lin ...
- Erlang 在erlang项目中使用protobuf
protobuf是google的一个序列化框架,类似XML,JSON,其特点是基于二进制,比XML表示同样一段内容要短小得多,还可以定义一些可选字段,广泛用于服务端与客户端通信.文章将着重介绍在erl ...
- activiti自己定义流程之Spring整合activiti-modeler实例(六):启动流程
1.启动流程并分配任务是单个流程的正式開始,因此要使用到runtimeService接口.以及相关的启动流程的方法.我习惯于用流程定义的key启动,由于有多个版本号的流程定义时,用key启动默认会使用 ...