JS 对象、HTML事件处理、JS 类型转换、Date
1. JS 对象
<script>
var Person = new Object();
Person.id = 1;
Person.name = "Hello World";
Person.age = 10;
Person.Func_eat = function(food)
{
console.log("eat:" + food);
} Person.Func_eat("vegetable"); Person2 = new Person(); //没有声明 Person 方法,报错
Person2.Func_eat("fruit");
</script>
上例是:直接创建一个对象的实例,但是没有为“这一类对象”定义构造函数。
使用构造创建对象,并有对象来初始化实例:
<script>
function Person(id, name, age)
{
this.id = id; //this 指向该函数所属的对象
this.name = name;
this.age = age; this.eat = function(food)
{
console.log(this.name + " eat:" + food);
}
} XiaoMing = new Person(1, "XiaoMing", 10);
XiaoMing.eat("meet"); LiLei = new Person(2, "LiLei", 12);
LiLei.eat("fruit");
</script>
2016.10.2 补充:
用Chrome 可以调试 HTML 里的 JS 脚本:
Egret 使用的类的定义方式:
var egret;
(function (egret) {
/**
* @private
*/
function _getString(code) {
var params = [];
for (var _i = 1; _i < arguments.length; _i++) { //arguments:JS关键字,函数参数数组;
params[_i - 1] = arguments[_i];
}
return egret.sys.tr.apply(egret.sys, arguments);
}
})(egret || (egret = {}));
- 常见格式:(function() { /* code */ })();
- 解释:包围函数(function(){})的第一对括号向脚本返回未命名的函数,随后一对空括号立即执行返回的未命名函数,括号内为匿名函数的参数。
- 作用:可以用它创建命名空间,只要把自己所有的代码都写在这个特殊的函数包装内,那么外部就不能访问,除非你允许(变量前加上window,这样该函数或变量就成为全局)。各JavaScript库的代码也基本是这种组织形式。
2. 常用JS处理的 HTML 事件:
onchange | HTML 元素改变 |
onclick | 用户点击 HTML 元素 |
onmouseover | 用户在一个HTML元素上移动鼠标 |
onmouseout | 用户从一个HTML元素上移开鼠标 |
onkeydown | 用户按下键盘按键 |
onload | 浏览器已完成页面的加载 |
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body> <button onclick="console.log(PrintDate())">现在的时间是?</button>
<button onclick="this.innerHTML=PrintDate()">现在的时间是?</button> <script>
function PrintDate()
{
return Date();
}
</script> </body>
</html>
标签都是用字符串描述的,onclick=PrintDate() 是新手容易犯的错误。
3. JS的运算符
常用运算符与C/C++相同,不赘述。
4. 类型转换
typeof() 可用于类型检查,在弱类型的脚本语言里还是很常用的。
<script>
function PrintDate()
{
return Date();
} console.log(typeof(PrintDate))
</script>
输出 “function”。
用 constructor 可以起到类似的效果:
function isArray(myArray) {
return myArray.constructor.toString().indexOf("Array") > -1;
}
类型转换:
<script>
var num = 123;
console.log(num.toString()); // Number方法-直接转换为字符串
console.log(num.toExponential()); // Number方法-转换为指数计数法
console.log(num.toFixed(3)); // Number方法-转换为字符串,小数点后带指定位数
console.log(num.toPrecision(5)); // Number方法-转换为指定长度字符串
console.log(Date().toString());
</script>
4. 时间API
getDate() | 从 Date 对象返回一个月中的某一天 (1 ~ 31)。 |
getDay() | 从 Date 对象返回一周中的某一天 (0 ~ 6)。 |
getFullYear() | 从 Date 对象以四位数字返回年份。 |
getHours() | 返回 Date 对象的小时 (0 ~ 23)。 |
getMilliseconds() | 返回 Date 对象的毫秒(0 ~ 999)。 |
getMinutes() | 返回 Date 对象的分钟 (0 ~ 59)。 |
getMonth() | 从 Date 对象返回月份 (0 ~ 11)。 |
getSeconds() | 返回 Date 对象的秒数 (0 ~ 59)。 |
getTime() | 返回 1970 年 1 月 1 日至今的毫秒数。 |
JS 对象、HTML事件处理、JS 类型转换、Date的更多相关文章
- json转js对象方法,JS对象转JSON方法
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- 小程序-调用公共js对象方法/ app.js
在小程序中,如果在子页面想调用共公js的方法,需先在子页面js中先实例化app:具体过程如下 子页面js: 1 2 3 4 5 6 7 8 //调用公共js对象以便调用其方法 var app = ge ...
- JS对象与Dom对象与jQuery对象之间的区别
前言 通过问题看本质: 举例: js的写法:document.getElementById('save').disabled=true; 在jquery中我是这样写的 $("#save&qu ...
- javascript基础-js对象
一.js对象的创建 1.普通最简单的方式 var teacher = new Object( ); teacher.name = "zhangsan"; teacher.age = ...
- JavaScript:JSON 和 JS 对象
区别 JSON(JavaScript Object Notation)仅仅是一种数据格式(或者叫数据形式).数据格式其实就是一种规范,按照这种规范来存诸和交换数据.就好像 XML 格式一样. 区别 J ...
- JS中String类型转换Date类型 并 计算时间差
JS中String类型转换Date类型 1.比较常用的方法,但繁琐,参考如下:主要使用Date的构造方法:Date(int year , int month , int day)<script& ...
- js实现小时钟,js中Date对象的使用?
介绍一下js中Date对象的使用 dateObj = new Date() dateObj = new Date(dateValue) dateObj = new Date(year,month,da ...
- JavaScript学习总结【3】、JS对象
在 JS 中一切皆对象,并提供了多个内置对象,比如:String.Array.Date 等,此外还支持自定义对象.对象只是一种特殊类型的数据,并拥有属性和方法,属性是与对象相关的值,方法是能够在对象上 ...
- 超全面的JavaWeb笔记day03<JS对象&函数>
1.js的String对象(****) 2.js的Array对象 (****) 3.js的Date对象 (****) 获取当前的月 0-11,想要得到准确的月 +1 获取星期时候,星期日是 0 4.j ...
随机推荐
- HTML参考手册
New : HTML5 中的新标签. 标签 描述 <!--...--> 定义注释. <!DOCTYPE> 定义文档类型. <a> 定义锚. <abbr> ...
- 理解Java NIO
基础概念• 缓冲区操作缓冲区及操作是所有I/O的基础,进程执行I/O操作,归结起来就是向操作系统发出请求,让它要么把缓冲区里的数据排干(写),要么把缓冲区填满(读).如下图• 内核空间.用户空间 上图 ...
- poj 2031 Building a Space Station【最小生成树prime】【模板题】
Building a Space Station Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 5699 Accepte ...
- Solr系列一:Solr与Tomcat的整合
第一次尝试着去写一个系列的教程,希望自己能坚持下去,也希望自己能够通过博客的编写来加深自己对solr搜索的理解. Solr与Tomcat的整合网上有很多教程,我就以我的整合为例来讲述一下我的整合过程, ...
- MacBook Pro 下Bash Shell 利用Alias 简化命令
编辑~/.bashrc或者~/.bash_profile alias go="xxxxx" 返回bash,执行 source ~/.bash_profile 即可. 我的常用别名 ...
- Java model 对象处理
public class BaseFlowBo { /** * 流量 */ private String flow; /** * Pv */ private String pv; /** * CTR ...
- solr ,hadoop ,lucene,nutch 的关系和区别
apache lucene是apache下一个著名的开源搜索引擎内核,基于Java技术,处理索引,拼写检查,点击高亮和其他分析,分词等技术. nutch和solr原来都是lucene下的子项目.但后来 ...
- Linux Epoll介绍和程序实例
Linux Epoll介绍和程序实例 1. Epoll是何方神圣? Epoll但是当前在Linux下开发大规模并发网络程序的热门人选,Epoll 在Linux2.6内核中正式引入,和select类似, ...
- [转] linux新的API signalfd、timerfd、eventfd使用说明
http://blog.csdn.net/gdutliuyun827/article/details/8460417 三种新的fd加入linux内核的的版本: signalfd:2.6.22 time ...
- IOS 开发 【objective-c 基础1】
案例:读取本地硬盘上程序根目录下words.txt文件内容,显示每行的字符数. // // main.m // hello // // Created by swack on 15/11/27. // ...