Javascript基础——不常用但很有用的js函数

JavaScript基础——4.JS函数 JS 函数声明需要以 function 关键字开头,后面跟上空格以及函数名,函数体用花括号括起来 格式如下:function 函数名(参数) {// 函数中的代码// 示例代码 函数声明// 函数表达式 类似于 python中的匿名函数。 阅读详情
1.1. JavaScript函数

这部分对Extjs中常用的几个JavaScript参数和函数进行说明,它们是arguments、call、apply、caller、callee。这几个函数在普通的JavaScript编程中很少使用,但在Extjs的源码中却经常会碰到,所以先熟悉这几个函数对Extjs的学习有很大的帮助。

1.1.1. arguments

arguments是JavaScript函数的隐含对象,它代表正在执行的函数和调用该函数时传入的参数。arguments中存储的是调用该函数时实际传入的参数的值,而不是函数声明时所定义的参数。arguments对象只能在函数开始时才存在,不能显示地为某个函数创建该对象。

例子1:

function sayHello(name,age){

var argNum = arguments.length;//实际传入的参数个数

var defNum = sayHello.length;//函数定义的参数个数

alert('调用函数时传入'+argNum+'个参数,他们是:'+arguments[0]+','+arguments[1]);

}

sayHello('zhangsan',12);//输出“调用函数时传入2个参数,他们是:zhangsan,12”

从例子1中可以看出,如果要得到函数声明时定义的参数数量,可以使用函数的length属性(上例中的sayHello.length)即可。要得到实际传入的参数数量,则使用arguments.length即可。

1.1.2. call
1.1.3. apply
1.1.4. caller

caller对象是JavaScript函数的一个属性对象,它表示调用当前函数的函数。换句话说caller返回一个函数引用,该函数调用了当前正在执行的函数。用法如下:

functionName.caller

其中functionName是当前执行函数的函数名称。对于函数来说,caller属性只有在函数执行时才存在。如果函数是由顶层调用的,则caller为null,如果是由其它函数调用了该函数,则caller返回调用函数的反编译文本。

例子1:

function sayHello(){

if(sayHello.caller){

var ca = sayHello.caller.toString();

alert(ca);//输出调用函数test()的文本内容

}

}

function test(){

sayHello();

}

test();

例子1通过test函数调用sayHello函数,sayHello函数中的sayHello.caller返回调用函数test的反编译文本:

function test(){

sayHello();

}

1.1.5. callee

callee 属性是 arguments 对象的一个成员,它表示对函数对象本身的引用,这有利于匿名函数的递归或者保证函数的封装性。

[function.]arguments.callee

可选项 function 参数是当前正在执行的 Function 对象的名称。

例子1:

function sayHello(){

alert(arguments.callee);//输出函数sayHello的文本内容

alert(arguments.callee.length);//形参个数

alert(arguments.length);//实参个数

if(arguments.callee.length == arguments.length){

alert(‘形参个数与实参个数相等,可以进行计算’);

……

}

}

sayHello();

callee拥有length属性,这个属性有时候用于验证还是比较有用。arguments.length是实参长度,arguments.callee.length是形参长度,由此可以判断调用时形参长度是否和实参长度一致。

js不常用但实用的JavaScript超级技巧 JavaScript 是一种应用场景多且功能强大的语言,对于现代 Web 开发至关重要。以下是一些超级技巧,它们将帮助你成为更高效、更有效的 JavaScript 开发人员,每个技巧都有详细的解释和示例。提示:以下是本篇文章正文内容,下面案例可供参考。 阅读详情

相关推荐

JavaScript入门一(JS基础知识)

文章目录一、JavaScript是什么二、网页组成2.读入数据总结 一、JavaScript是什么        JavaScript(简称“JS”)百度解释如下: 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。虽然它是作为开发Web页面的脚本语言而出名,但是它也被用到了很多非浏览器环境中,JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式、声明式、函数式编程范式。   &

qq_44872688的博客 3034

JS不常用函数整理

原文:http://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000$(function(){ test1(); test2(); test3(); test4(); test5(); test6(); test7();...

weixin_34308389的博客 124

JavaScript的起源?不同的JavaScript和引擎?JS版本发展史?

1995年,JavaScript诞生了。不得不提到它的标准ECMAScript, 它是一个语言标准,而非具体的语言。JavaScript除了名字有”Java”, 其它和Java没任何关系。Netscape为推广自家的LiveScript,命名中包含当时最流行的编程语言Java来蹭蹭热度。Netscape公司有些人可能不熟悉, 它就是早期被IE做浏览器对抗后来逐渐消亡一家公司。

编程语言开发、框架原理、编程思想、最佳实践技巧经验分享。致力于各种编程技术的技巧经验干货分享,讲解开发避坑技巧,追踪开发前沿技术,实战展开解决难题。 程序员小迷助您在编程路上越走越好! 2160

自己关于学习js的一些经历

做为一名前端,相信许多初学者都会遇到这个问题:js学不会,不知道该怎么学习,不知道如何提高。在这里和大家分享一下自己的学习过程吧。现在前端这门职业已经日趋成熟,自学出身加上培训机构的批量生产,市场上的前端工程师已经有过剩的趋势,剩余的都是刚培训出来或者自学时间短的,真正的前端依旧稀缺。关于什么是真正的前端,这里有一篇文章可以去了解一下,http://www.wufangbo.com/que-qia...

web_xyk的专栏 9615

Excel转LaTeX表格神器:excel2latex.xla插件使用全攻略(含下载链接与配置教程)

本文详细介绍了Excel转LaTeX表格神器excel2latex.xla插件的完整使用攻略。从下载安装、基础转换到高级配置,深入讲解了如何利用该插件高效生成LaTeX代码,特别针对IEEE双栏等复杂排版需求提供了专业解决方案,帮助用户彻底告别手动编码,提升学术与专业文档的排版效率。

app77的博客 295

Qt Installer Framework4.6.1的最基础使用1(win10+离线安装包 )

因工作需要,win程序发布后,打包成一可执行exe文件,且兼容win7系统笔者记录了一些关键要点,供有需要的小伙伴使用。

aggs1990的专栏 904

不常用JS函数

1,eval:可计算某个字符串,并执行其中的的 JavaScript 代码 https://www.w3school.com.cn/jsref/jsref_eval.asp 2,arguments.callee:用于引用该函数的函数体内当前正在执行的函数 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/arguments/callee ...

qq_46068142的博客 157

AI Agent在营销领域的实战策略

本文从第一性原理出发,系统性拆解AI Agent在营销领域的落地逻辑、技术架构、实现方案与实战策略。全文覆盖从基础概念到高级优化的全层级知识:底层理论层面推导营销Agent的效用函数与决策框架;技术架构层面提出"感知-记忆-规划-行动-反思"五组件可落地架构;实践层面提供生产级代码实现、多行业案例与ROI提升方法论;前沿层面探讨多Agent协同、世界模型仿真等下一代技术方向。

操作系统内核探秘的博客 227

VUE 不常用 却很有用的一些方法

<style type="text/css"> [v-cloak] { display: none; /* v-cloak这个属性会在页面渲染前作用于对应dom 在渲染完毕这个里面的样式将被移除 */ } </style> </head><div id="demo"> <ul v-cloak&g

a1178013314的博客 1199

【ACP】2025-最新-疑难题解析- 练习一汇总

他们对您的方案比较满意,作为一个特别看重用户体验的创业公司,他们有一个比较担心的问题:在后端云服务器 ECS 实例相对空闲时,可能会触发减少 ECS 实例的伸缩活动,这时候运行在即将移出伸缩组的 ECS 实例上的应用会被终止,那么发起这些应用的用户的体验会变差。:在使用阿里云的负载均衡 SLB 实例时,做了如下健康检查的配置:响应超时时间为 5 秒,健康检查间隔为 2 秒,不健康阈值为 3,健康阈值为 3,即对于确认一个后端服务器 ECS 实例是健康的,需要连续三次得到正常响应。以下说法哪一项是正确的?

jundao1997的专栏 326

Altium Designer系列: 软件系统参数配置保存

【Altium Designer实践】 软件系统参数配置保存 作者 CodeAllen ,转载请注明出处 目录设置中文菜单高亮模式设置文件关联pcb设置布线设置保存配置文件(复用) 设置中文菜单 DXP->Preferences 高亮模式设置 文件关联 pcb设置 布线设置 保存配置文件(复用) ......

CodeAllen嵌入式 2018

一些很实用但是JavaScript没有提供的函数

moveElement:对元素进行移动 function moveElement(elementID,final_x,final_y,interval){ //elementID是要移动元素的ID,final_x和final_y要移动到的位置,interval是移动时间间隔 //安全检查 if(!document.getElementById) return false ; if(!do

MrMrs的专栏 602

【项目实战】YOLOV5 +实时吸烟目标检测+手把手教学+开源全部

本原创项目长期更新,旨在完成校园异常行为实时精检测,做到集成+N次开发+优化(不止局限于调包)为止,近期将不断更新以下模型+数据+标注文件+教程。关注博主,Star 一下github,一起开始美妙的目标检测之路吧~~ 文章目录本原创项目长期更新,旨在完成校园异常行为实时精检测,做到集成+N次开发+优化(不止局限于调包)为止,近期将不断更新以下模型+数据+标注文件+教程。关注博主,Star 一下github,一起开始美妙的目标检测之路吧~~一、项目展示二、项目资源共享1:训练图片:香烟图片+吸烟手势+烟雾三、

cv君的博客 13万+

原生JS(JavaScript)

JS 是JavaScript的简述 JS基于对象和事件驱动脚本语言,作用在浏览器上 JS的事件 onsubmit 主要用于表单的提交,绑定的位置在form标签里面,要有返回标记,如果提交的数据校验未通过,不允许表单提交 onload 用于页面加载的时候使用的事件,绑定的位置在body标签里,也可以用window.οnlοad=function(){} onclick/ondblclick 主要用于鼠标点击事件,常见的有按钮、图片、文字、超链接等等 onfocus/onblur 聚焦离焦事件,主要用

断肠人在刷牙〃的博客 9392

Mamba SSM 实战:IMDb 文本分类 + Mamba-ssm 全流程

Mamba SSM 文本分类链路:IMDb 二分类 → MambaLMHeadModel (d_model=256, n_layer=8, d_state=16, exp2=2) → 末 token 分类头。5 epoch 达 89.2% 准确率 (与 BERT-base 持平), 但显存降低 44% (3.5GB vs 6.2GB)。建议序列长度 ≥ 1024 再选 Mamba, 短序列 (< 512) 用 BERT 更高效。扩展时注意d_state。

m0_71589036的博客 57

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

黑马JS教程笔记(JavaScript教程)——JS基础

<head><title>JavaScript练习</title></head><body><script></script></body>

Dontla的博客 2653

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

前端——JavaScript(JS)代码基础

前端中的JavaScript代码基础

2402_88087197的博客 2887

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

js常用函数总结

本文整理了JavaScript常用的核心函数,涵盖基础操作、数组、字符串、对象、日期和正则表达式等场景。

0.0的博客 1800

【Node.js】使用 Node.js 需要了解多少 JavaScript?

总的来说,使用 Node.js 开发并不要求你掌握所有 JavaScript 的高级知识,但了解 JavaScript 的基础和异步编程的核心概念,将大大提高你的开发效率。通过不断学习和实践,你将能够利用 Node.js 构建出高效、可扩展的应用程序。希望本文能帮助你了解在学习 Node.js 之前需要掌握的 JavaScript 知识,帮助你在 Node.js 的开发路上走得更远。祝你编码愉快!

佚名程序员 1931

【JavaScript】JS语法入门到实战

Javascript语法的基本讲解。

大三小白C++进阶之路 2572

JavaScript(JS)的简单了解

JavaScript(JS)的简单了解

m0_68989458的博客 3047

js---javaScript基础知识

javascript是脚本语言,这门语言可用于html和web。 javascript是一种轻量级的编程语言。 是可以插入html页面的编程代码,插入后,通过浏览器执行。 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <script> doc.

A123ppleQueen的博客 2078

【JavaScript基础】JS函数

函数定义、调用、参数、返回值、作用域

DUMG 992

JavaScript 前端枚举库 js-enumerate

前端枚举类Enum对象可在JavaScript中使用,用于枚举定义,前端组件单选、多选等的options选项的定义。

带着Bug看世界 2591
上一篇: Javascript基础——详解prototype
下一篇: Hibernate入门实例——动态组件(Dynamic components)
weoln
博客等级 码龄21年 43粉丝 123原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值