看了一下关于prototype的文章,但是,太书面化了,不易理解,我将prototype还原成类对象,和大家分享一下,如果不对,欢迎拍砖!
///原型对象
public class prototype
{
//attribute
public object constructor;
//init
public prototype(constructor)
{
self.constructor = constructor;
}
//调用 prototype
public object prototype()
{
return this.parent; // prototype
}
//设置prototype值
public void .=(key,value)
{
set(key,value);
}
}
///Function对象
public class function : prototype
{
//attribute
public ArrayArguments arguments;
public object prototype = prototype();
//init
public function()
{
//调用基类
super(this);
//建立初始化属性
//处理 arguments
}
//call me
public callee()
{
function();
}
}
测试代码 1
function abc()
{
};
function cba()
{
this.c = "cba.prototype";
}
cba.prototype.d="d";
//abc对象继承cba对象
abc.prototype = new cba();
//实例化ABC对象
var obj = new abc();
abc.prototype.c = "abc.prototype";
obj.c = "self";
//打印对象间继承关系
alert(obj.c);
alert(abc.prototype.c);
alert(abc.prototype.d);
alert(obj.d);
测试代码 2
function abc()
{
};
var obj = new abc();
obj.c = "self";
//打印对象属性
alert(obj.c);
//打印继承prototype对象属性
alert(abc.prototype.c); //undefine
abc.prototype.c = "abc.prototype";
alert(obj.c); //self
alert(abc.prototype.c); //"abc.prototype";
分享到:
相关推荐
理解原型链、构造函数、原型对象(__proto__和prototype)以及`Object.create()`方法对于深入学习JavaScript至关重要。 4. **ES6及后续版本的新特性**:ECMAScript(ES)标准的更新不断引入新特性,如箭头函数、...
此外,`Array.prototype.slice.call`可用于将类数组对象转换为数组,这在处理DOM节点列表等场景中非常有用。 总之,JavaScript数组的全面理解对于开发者而言至关重要,只有深入了解其特性和API,才能更好地利用数组...
- **应用场景**:加密或解密操作时,转换成ASCII码更容易处理。 9. **`replaceAll()`**:全局替换字符串中的某个子串。 ```javascript String.prototype.replaceAll = function(oldValue, newValue) { return ...
暗号附加到String.prototype和Object.prototype的安全,干净,快速和高效的方法,用于基于同步加密的加密和解密。 加密和解密通过使用对称密钥来完成。关于Cypher不会通过基于映射模式的分配进行加密。 密码加密过程...
JavaScript提供了多种方法来处理字符串,例如`String.fromCharCode()`和`String.prototype.charCodeAt()`,这两个函数可以用于创建一个简单的字符编码加密系统。 加密过程通常是将原始字符串的每个字符转换为其...
`WXBizDataCrypt.js`是微信官方提供的一个JavaScript工具包,主要用于解密微信小程序接口返回的加密数据。这些数据通常包含了用户的敏感信息,如手机号码、昵称等,为了保护用户隐私,微信会将这些信息加密后传递给...
在进行JavaScript编程的过程中,有一些基础且非常实用的函数会频繁地被使用,本文将对这些常用函数进行归纳整理,并对它们的用法和特点进行详细说明。以下是对JavaScript中一些常用函数的总结,这些内容对初学者和...
解密过程类似,但使用了`reduceRight`来反向遍历算法列表,确保最后一个加密算法产生的结果首先被解密。 4. **配置选项** 示例代码中,`MixCrypto`构造函数接收一个`options`对象,允许用户自定义加密算法、输入...
Function.prototype.bind = function (context) { var self = this; return function () { return self.apply(context, arguments); }; }; ``` 8. 算法:一定规律的点阵 这个问题需要使用数学的方法来解决。...
Node.js是一种基于Chrome V8引擎的JavaScript运行时环境,用于构建网络应用。Crypto模块是Node.js的一个内置模块,主要提供了加密和散列功能。下面将对给定内容中涉及的Node.js Crypto模块相关知识点进行详细解读。 ...
3. **加密与解密**: 在JavaScript中进行加密算法实现时,通常需要对二进制数据进行操作,如AES、RSA等。 4. **图像处理**: 图像数据本质上就是二进制数据,可以通过ArrayBuffer和typed arrays来处理,例如创建像素...
另外,过滤器也可以用于对AJAX返回的数据进行预处理,如数据加密解密,提高数据传输的安全性。 总结来说,Web12 Filter提供了在服务器端对HTTP请求进行控制和增强的能力,而AJAX则改善了客户端的交互体验。两者结合...
在JavaScript中,我们通常使用`String.prototype.replace()`方法来实现这样的功能。此方法接受两个参数:一个正则表达式或字符串(作为查找的模式),以及一个替换字符串或函数(用于替换匹配的子串)。 例如,如果...
RSA是一种非对称加密算法,它使用一对密钥,即公钥和私钥,来进行加密和解密操作。在Vue中,我们可以借助第三方库JSEncrypt来实现RSA加密。 JSEncrypt 是一个JavaScript库,它提供了RSA加密的功能。在Vue项目中使用...
Vue.prototype.$md5 = md5; ``` 通过这种方式,在Vue组件中的任何方法里都可以通过`this.$md5`访问到MD5加密功能。 3. 一个具体的Vue实例 下面是一个具体的Vue组件示例,其中使用到了MD5加密功能。 ```javascript...
此外,一些网站可能会利用`document.write`等其他方法来动态输出解密的内容,所以可能需要同时挂钩`document.write`。 总之,通过理解和利用JavaScript的动态执行机制,我们可以对网页中的动态代码进行拦截和分析,...
不同编程语言提供了各种方法来实现数组反转,比如C++中的`std::reverse`函数,JavaScript中的`Array.prototype.reverse()`方法等。 #### 3. 链表反转(Linked List Reverse) 链表是一种常用的数据结构,它由一...