JS构造函数的用法和JS原型
$(function(){
//
var rec = new Rectangle(5, 10);
//alert(rec.width + "*" + rec.height + "=" + rec.area());
//alert(rec.hasOwnProperty("width"));
//alert("area" in rec);
//alert(rec.toString());
//
var message = "hello world";
//alert(message.endsWith("d"));
//alert(Array.prototype.push);
//表示的最大数字和最小数字
//alert(Number.MAX_VALUE + " OR " + Number.MIN_VALUE);
//
var n = 17;
//alert(n.toString(2)); //其中2代表转为2进制,若将其改为16,则输出的是16进制的值s
//
//alert(parseInt("15",8)); //输出13,15的8进制(13 == 1*8+5*0)
//5.1
//alert(fun(5));
//5.2
//alert(fun2(5));
var point = new Object();
point.x = 1;
point.y = 2;
//alert(point.x + " AND " + point.y);
//alert(delete point.x); //这一行代码有无执行会影响到下一行代码的执行结果
//alert("x" in point);
var arr = [1, 2, 3, 4, 5];
//alert(arr.concat(4, [5, [6, 7]]));
//alert(arr.slice(1, 4)); //截取数据第2个到第5个元素,包括第2个不包括第5个
var str = "chinese";
//alert(str.lastEndChar());
//alert(location.href);
//alert(location.search); //获取url地址?后面的参数列表
//打开新窗口
//window.open("http://www.baidu.com", "minWin", "width=400, height=350, status=yes, resizable=yes");
});
//JS构造函数 1
function Rectangle(w, h) {
this.width = w;
this.height = h;
this.area = function () {
//return this.width * this.height; //写法1.1
with (this) { //写法1.2
return width * height;
}
}
}
//设置Rectangle的原型值,若构造函数中无定义area方法,则默认使用原型
Rectangle.prototype.area = function () {
return 5;
}
//重写Rectangle的toString方法
Rectangle.prototype.toString = function () {
return this.width + " " + this.height ;
}
//2 查看字符串的结尾是否是以c结尾的 返回true OR false
String.prototype.endsWith = function (c) {
return (c == this.charAt(this.length - 1));
}
//5.1 lambda写法(拉姆达)
var fun = function (x) {
return x + x;
}
//5.2
var fun2 = new Function("x", "return x+x");
//返回字符串末尾的指定个数的字符
String.prototype.lastEndChar = function (num) {
num = (null != num)? num : 1;
return this.substring(this.length - num, this.length);
}
我只会编码,因为我相信代码比任何的语言表达更能让人信服!!!
原创来自:背着理想去流量
JS构造函数的用法和JS原型的更多相关文章
- JS构造函数、对象工厂、原型模式
1.对象创建的3中方法 1.1.对象字面量 var obj = { name: "mingzi", work: function () { console.log("wo ...
- 深入研究js构造函数和原型
很快就要从新浪离职了,最近心情比较轻松,抽点空整理一下构造函数和原型的机理. 我们都知道,在经典设计模式中我们最常用的就是工厂模式.构造函数模式.原型模式这几种,听起来‘模式’好像很高大上的样子,实际 ...
- js最好的继承机制:用对象冒充继承构造函数的属性,用原型prototype继承对象的方法。
js最好的继承机制:用对象冒充继承构造函数的属性,用原型prototype继承对象的方法. function ClassA(sColor) { this.color = sColor; } Class ...
- js一种继承机制:用对象冒充继承构造函数的属性,用原型prototype继承对象的方法。
js一种继承机制:用对象冒充继承构造函数的属性,用原型prototype继承对象的方法. function ClassA(sColor) { this.color = sColor; } ClassA ...
- js高级——构造函数,实例对象和原型对象——prototype、__proto__和constructor构造器
一.前言 了解JavaScript面向对象,需要先了解三个名词: 构造函数,实例对象和原型对象. 注意:JavaScript中没有类(class)的概念,取而代之的是构造函数,两者类似却又有很大的差别 ...
- js 构造函数 & 静态方法 & 原型 & 实例方法
js 构造函数 & 静态方法 & 原型 & 实例方法 ES5 "use strict"; /** * * @author xgqfrms * @licens ...
- JS高级---构造函数,实例对象和原型对象,三者关系
构造函数,实例对象和原型对象,三者关系 构造函数里面有原型(prototype)属性,即原型对象 原型对象里的constryctor构造器指向构造函数 通过构造函数,实例化,创建的就是实例对象. 实例 ...
- 谈谈JS构造函数
//构造函数 //使自己的对象多次复制,同时实例根据设置的访问等级可以访问其内部的属性和方法 //当对象被实例化后,构造函数会立即执行它所包含的任何代码 function myObject(msg) ...
- Class和普通js构造函数的区别
Class 在语法上更加贴合面向对象的写法 Class 实现继承更加易读.易理解 更易于写 java 等后端语言的使用 本质还是语法糖,使用 prototype Class语法 typeof Math ...
随机推荐
- 【nginx】关于gzip压缩
有这么一段配置文件 gzip on # 默认值: gzip off # 开启或者关闭gzip模块 gzip_static off; # nginx对于静态文件的处理模块 # 该模块可以读取预先压缩的g ...
- 对象复制问题 && lvalue-rvalue && 引用
按值传递实参到函数和函数返回临时变量的副本,函数的效率对执行性能来说至关重要 如果避免这样的复制操作,则执行时间可能会大大缩短. class CMessage { private: char * m_ ...
- 关于hadoop 配置文件的一些实验
机器配置如下,两台机器,nn2,nn2,搭建基于QJM的高可用集群,zk集群. 如果我在yarn-site.xml中配置的nodemanager的可用资源过少,其他配置如果不一致,那么就会造成提交的j ...
- django安装和卸载
一.pip安装 安装: apt-get update apt-get install python-pip pip install django==1.4.20 卸载: pip uninstall d ...
- 1.素数判定(如何输出\n,\t,不用关键字冲突)
题目描述 Description 质数又称素数.指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数. 素数在数论中有着很重要的地位.比1大但不是素数的数称为合数.1和0既非素数也 ...
- JS练习题-Harshad numbers
在Codewars上面练习,现在到6级的题目了(数字越小越难) 这道题叫Harshad or Niven numbers, 原题http://www.codewars.com/kata/54a0689 ...
- 2D Tookit (一) 精灵切割
Sprite Dicing 精灵切割 图一:原图 Diced 设置 Diced[切割]对比图 文档 http://www.2dtoolkit.com/docs/latest/advanced/sp ...
- bundle是什么?
bundle就是一个数据对象,像Map,HashMap一样key-value键值对的方式存放数据.在android中用于应用程序之间数据传输,不过是要靠对象使用的 谢谢,又知道了一种在Activity ...
- Fitnesse初体验
FitNesse是一套软件开发协作工具 FitNesse是帮助大家加强软件开发过程中的协作的工具.能够让客户.测试人员和开发人员了解软件要做成什么样,帮助建议软件最终是否达到了设计初衷. 什么是Fit ...
- MySchool
USE [MySchool] GO /****** Object: Table [dbo].[Grade] Script Date: 08/06/2014 15:03:17 ******/ SET A ...