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 ...
随机推荐
- pygame学习资料
pygame下载地址: https://bitbucket.org/pygame/pygame/downloads 12岁的少年教你用Python做小游戏 Beginning Game Program ...
- Git 的优点
1. 快速 如果你每移动一下鼠标都要等待五秒,是不是很受不了?版本控制也是一样的,每一个命令多那么几秒钟,一天下来也会浪费你不少时间.Git的操作非常快速,你可以把时间用在别的更有意义的地方. 2. ...
- web前端面试试题总结---其他
其他问题 原来公司工作流程是怎么样的,如何与其他人协作的?如何夸部门合作的? 你遇到过比较难的技术问题是?你是如何解决的? 设计模式 知道什么是singleton, factory, strategy ...
- Java中的字符串流的读取和写入(创建文件并判断重复账户)
各位我又来了!!哎!好心酸!我还没注册到三天!!没法登上博客的首页!!心累!! import java.io.BufferedOutputStream; import java.io.Buffered ...
- 在线程中进行读取并写入文件和wenjia
新人求(胸)罩!!! import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException ...
- DataGridView绑定BindingList<T>带数据排序的类
本文章转载:http://yuyingying1986.blog.hexun.com/30905610_d.html DataGridView绑定List<T>类时候,不会自动的进行排序. ...
- JQuery的Ajax跨域请求的
JQuery的Ajax跨域请求的(Ajax) 什么是jsonp格式呢?API原文:假设获取的数据文件存放在远程server上(域名不同.也就是跨域获取数据),则须要使用jsonp类型.使用这样的类型的 ...
- 【待解决】编译V8引擎出错-snapshot.cc
这几天学习nodejs,翻阅官网的API文档.看到nodejs插件时,想了解一下v8的实现机制,于是我便从GitHub社区克隆了一份v8源码库.哪知道,编译安装的时候就出了问题,这问题已经折磨我两天了 ...
- mac eclipse配置 tomcat
mac由于各种软件不兼容,某些软件对于开发来说很苦恼,tomcat这个东西一直不知道怎么弄,项目都开了好几天了,一直用在虚拟机上用windows系统,但是用虚拟机明显感觉到电池待机时间更短了,所以就研 ...
- 突然想写点东西,关于web新人的。采用问答方式
我自己是会计专业,转行自学web的,学习有一两年了,也还是新人一个,只不过不是那种超级“新”的,所以有什么话说得不对,请轻喷.欢迎大家来和我交流. 1.我能不能转行学web? 能不能学web这个不是别 ...