js 复杂研究
function test_001()
{
var t =0;
return
t || out_str("t未定义"), //1 // 执行1句;在执行2句;
t||null //2
}
var obj = test_001();
function out_str(obj) //定义一个函数
{
console.log(t);
}
out_str.fn = out_str.prototype ={name:'张三'}; //函数对象 添加属性 fn 和 prototype 他们的值为一个 对象 {name:'张三'}
var t = out_str.prototype;
out_str.extend = out_str.fn.extend = function() {}; //为 out_str 添加一个 extend 属性; 为out_str下的 fn 属性添加 一个 extend
var F = function(e) {
var i = this; // 这个this 就是 这个函数 F 对象 当 执行 var t = new F(e); 的时候
console.log(this);
console.log(this.abcdeE); //F.abcdeE={name:"FFFF"}; ; 输出 未定义
console.log(this.abcdeF); //F.prototype.abcdeF = {name:"FFFF"}; // {name: "FFFF"}
i.index = ++d.index,
i.config = test({}, i.config, d.config, e), //config为扩展属性 才有定义 否则 直接 F.
//i.config = r.extend({}, i.config, d.config, e),
i.render() //执行 扩展函数
};
//表示扩展函数
F.prototype.render = function() {console.log("END")}
F.prototype.abcdeF = {name:"FFFF"};
F.abcdeE={name:"FFFF"}; //为对象添加一个属性; 但不在扩展属性内;
d.abcde={name:"abcde"};
d.render = function(e) {
var t = new F(e); //传递一个对象
return c.call(t)
};
d.render = function(e) {
var a, b, c, d, e, f, g = arguments[0] || {}, //a =b=c=d=e=f 都是未定义 ;g=传递的第一个参数
j = !1; //j=false
js 复杂研究的更多相关文章
- js深入研究之Person类案例
<script type="text/javascript"> /* 定义一个Person类 */ function Person(name, age) { this. ...
- js深入研究之扩展类,克隆对象,混合类(自定义的extend函数,clone函数,与augment函数)
1.类扩展 /* EditInPlaceField类 */ /* 扩展函数 */ function extend(subClass, superClass) { var F = function() ...
- js深入研究之克隆,属性,数组,对象,函数
代码 <script type="text/javascript"> /* 克隆原型得到对象 */ function clone(object) { function ...
- js深入研究之神奇的匿名函数类生成方式
<script type="text/javascript"> var Book = (function() { // 私有静态属性 ; // 私有静态方法 funct ...
- js深入研究之牛逼的类封装设计
<script type="text/javascript"> var Book = function(newIsbn, newTitle, newAuthor) { ...
- js深入研究之函数内的函数
第一种 function foo() { ; function bar() { a *= ; } bar(); return a; } 第二种 function foo() { ; function ...
- js深入研究之类定义与使用
js可以定义自己的类 很有意思 <script type="text/javascript"> var Anim = function() { alert('nihao ...
- 关于audio.js的研究
——杂言:audio.js结合使用html5的audio组件实现了音频的原位播放功能.虽然项目里已经使用一段时间了,不过我是最近才开始有所接触,惭愧.个人见解若有不对,请帮忙纠正,谢谢. 官方相关链接 ...
- 纯CSS实现JS效果研究
利用CSS3:checked选择器和~配合实现tab切换 效果: 代码: <style> body,div,input,label{ margin:0; padding:0; } #tab ...
- JS闭包研究、自造困扰与解答
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
随机推荐
- P2085 最小函数值
题目链接hhh:https://www.luogu.org/problemnew/show/P2085好嘛,运气真好,刚A掉序列合并,正好碰到这题,可以说是序列合并的升级版了 那么简单说一下思路,首先 ...
- linux查看cd/dvd驱动器的设备信息
在linux下,如何来查看系统里的CD-ROM或者DVD驱动器的设备名呢? 你可以输入下面的命令来查看当前系统下的光盘驱动器信息: 1.使用dmesg命令来查看当前的硬件是否被linux内核正确的识别 ...
- MySQL -2- 体系结构-多实例模块
0.在已创建mysql,port=3306的数据库前提下 需要删除/etc/.my.cnf再做以下操作 cp /etc/my.cnf /etc/my.cnf.3306 1.mkdir -p /u02/ ...
- 小记------查看‘阿里云机器’yarn 日志
通过ip:8088 页面 复制正在运行的application ID 在linux客户端执行 xshell yarn logs -applicationId application_155869 ...
- Servlet概念及与Jsp的区别
一.Servlet概念 Servlet是在服务器上运行的小程序.一个Servlet就是一个Java类,并且可以通过”请求-响应”编程模型来访问这个驻留在服务器内存里的Servlet程序 二.Servl ...
- python中几个常见的魔法方法
首先,什么是魔法方法呢?在python中方法名如果是__xxxx__()的,那么就有特殊的功能,因此叫做"魔法"方法. __ init__()方法 当一个实例被创建的时候调用的初始 ...
- limux密钥对配置登陆主机
1. Linux主机免密码使用密钥登陆 这里假设主机A(192.168.0.113)用来远程连接主机B(192.168.0.186) 在主机A上执行如下命令来生成配对密钥:ssh-keygen -t ...
- homebrew学习(五)之homebrew cask和homebrew services
homebrew cask 如果我想安装Chrome浏览器怎么办?试试下面的命令: brew install google-chrome 发现并不能安装,没有该软件.怎么办?好消息是一个叫做homeb ...
- MySQL数据库入门多实例配置
MySQL数据库入门——多实例配置 前面介绍了相关的基础命令操作,所有的操作都是基于单实例的,mysql多实例在实际生产环境也是非常实用的,因为必须要掌握 1.什么是多实例 多实例就是一台服务器上开启 ...
- 生成二维码(java后端)
需要引入2个jar包: <dependency> <groupId>com.google.zxing</groupId> <artifactId>jav ...