做网站的财务需求设计新颖的兰州h5制作

news/2025/10/4 10:44:26/文章来源:
做网站的财务需求,设计新颖的兰州h5制作,ftp上传网站步骤,wordpress字体图标(注#xff1a;在看到大家如此关注JS里头的这几个对象#xff0c;我试着把原文再修改一下#xff0c;力求能再详细的阐明个中意义 2007-05-21#xff09;在提到上述的概念之前#xff0c;首先想说说javascript中函数的隐含参数#xff1a;arguments Arguments 该对象代表…(注在看到大家如此关注JS里头的这几个对象我试着把原文再修改一下力求能再详细的阐明个中意义  2007-05-21在提到上述的概念之前首先想说说javascript中函数的隐含参数arguments Arguments 该对象代表正在执行的函数和调用它的函数的参数。[function.]arguments[n]参数function 选项。当前正在执行的 Function 对象的名字。 n 选项。要传递给 Function 对象的从0开始的参数值索引。 说明 Arguments是进行函数调用时除了指定的参数外还另外创建的一个隐藏对象。Arguments是一个类似数组但不是数组的对象说它类似数组是因为其具有数组一样的访问性质及方式可以由arguments[n]来访问对应的单个参数的值并拥有数组长度属性length。还有就是arguments对象存储的是实际传递给函数的参数而不局限于函数声明所定义的参数列表而且不能显式创建 arguments 对象。arguments 对象只有函数开始时才可用。下边例子详细说明了这些性质: //arguments 对象的用法。function ArgTest(a, b){   var i, s  The ArgTest function expected ;   var numargs  arguments.length;     // 获取被传递参数的数值。   var expargs  ArgTest.length;       // 获取期望参数的数值。   if (expargs  2)      s  expargs   argument. ;   else      s  expargs   arguments. ;   if (numargs  2)      s  numargs   was passed.;   else      s  numargs   were passed.;   s  \n\n   for (i 0 ; i  numargs; i){      // 获取参数内容。   s    Arg   i      arguments[i]  \n;   }   return(s);                          // 返回参数列表。} 在此添加了一个说明arguments不是数组(Array类)的代码: Array.prototype.selfvalue  1;alert(new Array().selfvalue);function testAguments(){    alert(arguments.selfvalue);} 运行代码你会发现第一个alert显示1这表示数组对象拥有selfvalue属性值为1而当你调用函数testAguments时你会发现显示的是“undefined”说明了不是arguments的属性即arguments并不是一个数组对象。在此附加上大家推荐的一个简单方法 alert(arguments instanceof Array);alert(arguments instanceof Object);  caller  返回一个对函数的引用该函数调用了当前函数。  functionName.caller   functionName 对象是所执行函数的名称。说明对于函数来说caller 属性只有在函数执行时才有定义。如果函数是由顶层调用的那么 caller 包含的就是 null 。如果在字符串上下文中使用 caller 属性那么结果和 functionName.toString 一样也就是说显示的是函数的反编译文本。下面的例子说明了 caller 属性的用法 // caller demo {function callerDemo() {    if (callerDemo.caller) {        var a callerDemo.caller.toString();        alert(a);    } else {        alert(this is a top function);    }}function handleCaller() {    callerDemo();} callee     返回正被执行的 Function 对象也就是所指定的 Function 对象的正文。[function.]arguments.callee 可选项 function 参数是当前正在执行的 Function 对象的名称。 说明 callee 属性的初始值就是正被执行的 Function 对象。 callee 属性是 arguments 对象的一个成员它表示对函数对象本身的引用这有利于匿名函数的递归或者保证函数的封装性例如下边示例的递归计算1到n的自然数之和。而该属性仅当相关函数正在执行时才可用。还有需要注意的是callee拥有length属性这个属性有时候用于验证还是比较好的。arguments.length是实参长度arguments.callee.length是形参长度由此可以判断调用时形参长度是否和实参长度一致。 示例 //callee可以打印其本身function calleeDemo() {    alert(arguments.callee);}//用于验证参数function calleeLengthDemo(arg1, arg2) {    if (arguments.lengtharguments.callee.length) {        window.alert(验证形参和实参长度正确);        return;    } else {        alert(实参长度 arguments.length);        alert(形参长度  arguments.callee.length);    }}//递归计算var sum  function(n){  if (n  0)                          return 1;  else    return n arguments.callee(n - 1)} 比较一般的递归函数 var sum  function(n){    if (1n) return 1;else return n  sum (n-1); 调用时alert(sum(100));其中函数内部包含了对sum自身的引用函数名仅仅是一个变量名在函数内部调用sum即相当于调用一个全局变量不能很好的体现出是调用自身这时使用callee会是一个比较好的方法。     apply and call    它们的作用都是将函数绑定到另外一个对象上去运行两者仅在定义参数方式有所区别     apply(thisArg,argArray);     call(thisArg[,arg1,arg2…] ]); 即所有函数内部的this指针都会被赋值为thisArg这可实现将函数作为另外一个对象的方法运行的目的 apply的说明 如果 argArray 不是一个有效的数组或者不是 arguments 对象那么将导致一个 TypeError。如果没有提供 argArray 和 thisArg任何一个参数那么 Global 对象将被用作 thisArg 并且无法被传递任何参数。 call的说明 call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisArg指定的新对象。如果没有提供 thisArg参数那么 Global 对象被用作 thisArg 相关技巧 应用call和apply还有一个技巧在里面就是用call和apply应用另一个函数类以后当前的函数类就具备了另一个函数类的方法或者是属性这也可以称之为“继承”。看下面示例: // 继承的演示function base() {    this.member   dnnsun_Member;    this.method  function() {        window.alert(this.member);    }}function extend() {    base.call(this);    window.alert(member);    window.alert(this.method);} 上面的例子可以看出通过call之后extend可以继承到base的方法和属性。   顺便提一下在javascript框架prototype里就使用apply来创建一个定义类的模式 其实现代码如下 var Class  {  create: function() {    return function() {      this.initialize.apply(this, arguments);    }  }} 解析从代码看,该对象仅包含一个方法Create其返回一个函数即类。但这也同时是类的构造函数其中调用initialize而这个方法是在类创建时定义的初始化函数。通过如此途径就可以实现prototype中的类创建模式。 示例 var vehicleClass.create();vehicle.prototype{    initialize:function(type){        this.typetype;    },    showSelf:function(){        alert(this vehicle is  this.type);    }}var motonew vehicle(Moto);moto.showSelf(); --附加说明   1.var vehicleClass.create();   相当于如下代码     var vehiclefunction() {      this.initialize.apply(this, arguments);    }    2.“this.initialize.apply(this, arguments);”主要作用有2个     一、是把vehicle类构造函数的参数arguments传递给方法initialize     二、是执行initialize方法。     3.vehicle类在实例化时调用了“带参数的构造函数” vehicle(Moto),而构成函数中又调用了vehicle类的自定义的initialize函数当作初始化用。   更详细的关于prototype信息请到其官方网站查看。 评论还有更精彩对此的理解在这我就不再添加了大家可以看看加深理解。        摘自http://www.cnblogs.com/sunwangji/archive/2006/08/21/482341.html             摘取部分评论     this.initialize.apply(this, arguments); 对于这句话2个this指的是同一个内容 var vehicleClass.create(); 执行过后this都指向vehicle本身。 prototype.js的写法目的是规定一个创建类的框架这个框架内类的初始化函数名一定是initialize而那句令人费解的话的语义是保证initialize一定会在类的实例创建后调用。 如果不用统一的框架创建类的话我们可以这样写 代码 function vehicle(type) {    alert(arguments instanceof Array);    this.init  function() {//这里就可以不叫initialize了         this.type  type;    }    this.showSelf  function() {        alert(this vehicle is   this.type);    }    this.init();//那句难解的话其实就是要给每个类都注入这句话而已 }var moto  new vehicle(moto);moto.showSelf();   通过这种写法你得到的moto实例和上面写法的得到的是一摸一样的。 总的来讲看了你的总结很有帮助。 我常用我写的这种方法创建类所以对于call apply的理解很模糊 js是脚本语言所以脚本的灵活性造成了无法做接口、类的继承检查 无法统一规定类构造函数的写法等等所以prototype用了很绕的方法 目的只有一个 强制规定所有类的初始化方法都叫initialize然后方便管理了就。   能把function搞成既指Class又指method的只有javascript了对于这种天生蹩脚的语言还是少用OO思维的好。 对于这句this.initialize.apply(this, arguments); 为什么不用this.initialize(arguments)是因为2者的语义是不同的。 表面上2者都是在function constructor里调用initialize函数期到OO里的non default constructor的作用。 但是this.initialize.apply(this, arguments)中通过apply函数可以使得传给function constrctor的参数列表都传给initialize函数。这是实际场景中的非匿名构造函数的调用。 而调用this.initialize(arguments)实际上是initialize函数只接受了一个参数那就是arguments这个对象而不是我们希望传入的参数列表 jQuery應用了大量apply/call(主要是因為這些功能都是完全跨瀏覽器的)               转载于:https://www.cnblogs.com/qiantuwuliang/archive/2011/01/03/1924390.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/927036.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

详细介绍:【数据库知识】TxSQL 主从数据库同步底层原理深度解析

详细介绍:【数据库知识】TxSQL 主从数据库同步底层原理深度解析pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "C…

做简历哪个网站比较好制作图片的软件哪个好

文章目录 797. 差分题目描述差分 797. 差分 题目描述 输入一个长度为 n nn 的整数序列。 接下来输入 m mm 个操作,每个操作包含三个整数 l,r,c, 表示将序列中 [l,r] 之间的每个数加上 c 。 请你输出进行完所有操作后的序列。 输入格式 第一行包含两个整数 n 和…

详细介绍:TensorFlow(1)

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

建设网站方案网页休闲游戏网站

关于单点登录 单点登录的基本实现思想: 当客户端提交登录请求时,服务器端在验证登录成功后,将生成此用户对应的JWT数据,并响应到客户端 客户端在后续的访问中,将自行携带JWT数据发起请求,通常&#xff0c…

电子政务门户网站建设教训综合性电商网站建设

if 语句后可以跟可选的 elsif ... else 语句,这对于使用单个if ... elsif语句测试各种条件非常有用。 if...elsif...else - 语法 Perl编程语言中的 if ... elsif...else语句的语法是- if(boolean_expression 1) {# Executes when the boolean expression 1 is tr…

南昌网站建设渠道全国被执行人名单查询

在 Vue 的组件通信中,slot(插槽)的编译优化是一个重要的性能提升点。以下是 Vue2 和 Vue3 在 slot 处理上的差异及优化原理,用更直观的方式解释: Vue2 的 Slot 更新机制 想象一个父子组件场景: 父组件&am…

2025.10.3 NOIP 模拟赛

前言 这回一改上次颓势。 T1一眼,T3思考2h+后场切。 但 T2 只有接近正解的 50 pts,T4 常数大挂了 20pts。 A 给定 \(n,k\),对 \([1,n]\) 建线段树后,求线段树上所有节点长度的 \(k\) 次方之和。 Solution 发现线段…

(最新原创毕设)基于SpringBoot的分布式存储平台/10.3(白嫖源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案 - 指南

(最新原创毕设)基于SpringBoot的分布式存储平台/10.3(白嫖源码+演示录像)|可做计算机毕设Java、Python、PHP、小程序APP、C#、爬虫大数据、单片机、文案 - 指南pre { white-space: pre !important; word-wrap: nor…

Python 之操作excel

一、常用方法 Workbook():创建新的工作簿create_sheet():创建工作表 append():加入一行数据详细:https://openpyxl.readthedocs.io/en/stable/api/openpyxl.html 二、示例代码import openpyxl from openpyxl.style…

大语言模型中的“推理”:基本原理与构建机制解析

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

网站模板商城网站如何换空间

PFA洗气瓶是一种常用于净化和干燥各种气体的实验室器皿,以去除其中的水分、油脂、颗粒物等杂质,从而使需要用到的气体满足实验要求。 PFA气体吸收瓶 PFA洗气瓶的工作原理: 主要是通过液体吸收、溶解或发生化学反应来去除气体中的杂质。在洗气…

找产品做代理都有哪个网站国际军事新闻视频

今天跟大家谈一谈越来越火爆的店群模式,现在大部分做跨境电商的卖家都会建立自己的店群,其中很多做 Shopee的卖家时常会听到一个名词“ Shopee 店群模式”,但很多人都不知道怎么去做,或者在犹豫要不要做,所以东哥我会从…

国家生物信息数据下载

001、ascp -P33001 -i /home/data/t200558/NPCdata/HRA003340/aspera01.openssh -QT -l100m -k1 -d aspera01@download.cncb.ac.cn:gsa-human/HRA003340 ./

隆昌网站建设小程序哪家公司代理

一. 背景 在刚接触开发的头几年里,说实话,根本不考虑多线程的这个问题,貌似那时候脑子里也有没有多线程的这个概念,所有的业务都是一个线程来处理,不考虑性能问题,当然也没有考虑多线程操作一条记录存在的并…

装修网站怎么做的好网站后端开发语言

题目: Bessie听说有场史无前例的流星雨即将来临;有谶言:陨星将落,徒留灰烬。为保生机,她誓将找寻安全之所(永避星坠之地)。目前她正在平面坐标系的原点放牧,打算在群星断其生路前转…

站长查询工具网站建设功能定位

很多时候需要用到连续的id进行数据对比,如判断是否连续等问题。那么,生成连续整数的方式有多种,首先容易想到的是逐步循环,如果想生成1kw条记录,则需要循环1kw次进行插入,那么有没有其他方式呢,…

linux jenkins服务启动异常等,排查是否日志磁盘空间满 du df命令

linux jenkins服务启动异常等,排查是否日志磁盘空间满 du df命令linux jenkins服务启动异常等,排查是否日志磁盘空间满 du df命令 日志路径问题PM2默认日志路径为/root/.pm2/logs/,若该目录权限不足或磁盘空间已满会…

详细介绍:LeetCode 391 完美矩形

详细介绍:LeetCode 391 完美矩形pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco&q…

[NOI2025] 集合 题解

[NOI2025] 集合 题解去不了 NOI 的菜鸡终于把集合看懂了,写个博客加深一下印象。 [NOI2025] 集合 要求: \[ans=\sum_P \sum_Q [f(p)=f(Q)][P\cap Q = \emptyset] \prod_{i\in P\cup Q} a_i \]先处理这题比较特殊的 \…