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的内部类的更多相关文章

  1. JavaScript基础--内部类(九)

    js的内部类javascript 中本身提供一些,可以直接使用的类,这种类就是内部类,主要有:ObjectArrayMathBooleanStringRegExpDateNumber 1.内部类分类从 ...

  2. javascript 学习笔记 -内部类

        js的内部类    javascript内部有一些可以直接使用的类    javascript主要有以下     object Array Math boolean      String D ...

  3. Ext JS 4 的类系统

    前言 我们知道,JavaScript中没有真正的类,它是一种面向原型的语言 .这种语言一个强大的特性就是灵活,实现一个功能可以有很多不同的方式,用不同的编码风格和技巧.但随之也带来了代码的不可预测和难 ...

  4. JavaScript(转载自 计科学院 慕课网)

    什么是脚本语言? ①脚本语言介于HTML和C,C++,Java,C#等编程语言之间 ②脚本语言与编程语言有相似地方,其函数与编程语言类似,也有变量.与编程语言之间最大的区别是编程语言的语法和规则更为严 ...

  5. JS中的内部类

     js内部类 javascript中本身有提供一些可以直接使用的类,这种类就是内部类.主要有:Object.Array.Math.Boolean.String.Number.Date.RegExp. ...

  6. js闭包vs Java内部类

    前言: 昨天写了一个关于Java内部的博客,在内部类的最后一点中谈到了Java闭包的概念,他是这样定义闭包的:闭包是一个可调用的对象,它记录了一些信息,这些信息来自创建它的作用域.结合Java的内部类 ...

  7. js闭包与java内部类

    在js中闭包用的比较广泛,主要解决变量作用域导致的问题.

  8. JS的Object漫想:从现象到“本质”

    转自:http://zzy603.iteye.com/blog/973649 写的挺好,用于记录,把对象分成概念的Object(var f={})和 类的Object(function F(){}) ...

  9. js 基础

    js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划():避 ...

随机推荐

  1. vue 监听 watch 使用

    1.api https://cn.vuejs.org/v2/api/#watch 有2个配置: (1)深度 watcher deep: true(2)该回调将会在侦听开始之后被立即调用 immedia ...

  2. HTML5 Support In Visual Studio 2010

    最近HTML5浪潮已经开始了,VS2010已经有一个扩展支持在HTML5智能提示.你可以从这里下载这个扩展: http://visualstudiogallery.msdn.microsoft.com ...

  3. bottle的几个小坑

    距离我在<web.py应用工具库:webpyext>里说要换用bottle,已经过去快两个月了--事实上在那之前我已经開始着手在换了.眼下那个用于 Backbone.js 介绍的样例程序已 ...

  4. Android日期对话框NumberPicker的使用方法教程

    NumberPicker是Android3.0之后引入的一个控件.NumberPicker 是用于选择一组提前定义好数字的控件.比方时间hour的选择仅仅有0-23有效,则能够通过setMinValu ...

  5. 应用程序之Xib自定义Cell

    效果展示 结构分析 代码实现 一.效果展示 二.结构分析 1⃣️首先我们让我们的控制器不再继承UIViewController,而是继承UITableViewController.这样就直接遵守了de ...

  6. Timer与ScheduledExecutorService间的抉择

    java.util.Timer计时器有管理任务延迟执行("如1000ms后执行任务")以及周期性执行("如每500ms执行一次该任务").但是,Timer存在一 ...

  7. sprint3 【每日scrum】 TD助手站立会议第四天

    站立会议 组员 昨天 今天 困难 签到 刘铸辉 (组长) 和楠哥学习了通过AlarmManager 来实现闹钟,由于要用到BroadcastReceiver广播协议,所以正在学习中,暂时只是按照教程写 ...

  8. Linux系统下授权MySQL账户访问指定数据库和数据库操作

    Linux系统下授权MySQL账户访问指定数据库 需求: 1.在MySQL中创建数据库mydata 2.新建MySQL账户admin密码123456 3.赋予账户admin对数据库mydata具有完全 ...

  9. Excel COM组件使用的注意事项和一些权限问题(转载)

    1.实例化Excel的COM组件的时候,不要直接调用类,要用Microsoft提供的接口 原来的写法:Excel.ApplicationClass excelApp = new Excel.Appli ...

  10. 搜狐新闻APP是如何使用HUAWEI DevEco IDE快速集成HUAWEI HiAI Engine

    6月12日,搜狐新闻APP最新版本在华为应用市场正式上线啦! 那么,这一版本的搜狐新闻APP有什么亮点呢? 先抛个图,来直接感受下—— ​ 模糊图片,瞬间清晰! 效果杠杠的吧. 而藏在这项神操作背后的 ...