部分Dojo常用函数简介(一)——Javascript基础扩展函数

Dojo-CodeLab: JavaScript与Dojo框架学习与实践指南 本文还有配套的精品资源,点击获取 简介:Dojo-CodeLab是一个提供学习和实践JavaScript及其Dojo框架的项目,专注于为初学者提供无需特定环境限制的编程平台。通过开发一个简单的计算器应用,学习者将掌握JavaScript基础语法和Dojo工具集的使用,涵盖变量、数据类型、控制结构、函数、对象、数学运算、事件处理和DOM操作等关键概念。本项目通过实际编码练习帮... 阅读详情

每个Ajax 框架都对Javascript 做了扩展,提供了很多常用函数,增强了 Javascript 的开发效率。在这里将对部分Dojo 中的常用函数做简单的介绍。由于Dojo的常用函数较多,也为方便大家阅读,将这些常用函数分为了五个类别分别进行介绍。本文将介绍第一部分的内容:Javascript基础扩展函数 。

 

* 本系列博文的绝大多数内容来自于对dojocampus.org上的dojo reference guide文档的翻译,在此也特别感谢文档的翻译者们:Fei Jia, Zhu Xiao Wen, Li Wen Bing, Zhang Jun, Hu Kuang, Huang Wei, Wu Min Qi, Mo Ying, Cheng Fu, Zhong Si Qi

dojo.hitch

dojo.hitch是一个优雅的函数。它会返回一个在指定作用域下执行指定语句的函数。通过调用这个函数,你可以很好地控制函数地执行,特别是在涉及到异步操作的时候。 比如下面的例子:

 

 

 

上面的例子无法正确的运行。你只会得到一个语义模糊的错误提示,比如: foo是一些变量未定义的错误。原因是,在如上例这样异步的回调函数中,当你赋给它一个关联表的时候,你改变了 ”foo”的作用域 .它的作用域不再关联到最初生成它的对象, xhr的参数对象上。要解决这个问题,你可以使用 hitch来强制这个函数保留它原来的作用域。正确的写法应该是像这样:

 

 

dojo.hitch需要两个参数,第一个参数指明了函数调用的关联作用域,第二个参数为一个函数对象或第一个对象中的成员函数名。
(注:关于 dojo.xhrGet,请参见后续的 AjaxIO部分)

dojo.partial

你是否想过要控制传递给函数的参数?举例来说,你是否有过这样的需求,设定传递给函数的第一个参数为已定义的值,而其它的参数仍然是可变化的。 dojo提供了一种方式可以满足这种需求。和 dojo.hitch类似, dojo.partial也是一个返回值为函数的函数。它所做的是让你可以用预定义的值锁定函数的前几个参数。这是一个非常强大的功能,特别是当你需要传入对象引用或者其它类似的给数据存储的通知函数。

下面就是一个使用 partial的示例:

 

 

那么,当 xhrGet函数返回的时候它会调用 dataLoaded函数 ,但是 xhrGet的 load函数期待的参数结构应该是: load(data, ioargs)。那么在 dataLoaded的第一个参数已经确定为 "someFirstParam"的情况下,我们如何去保证 xhrGet对于参数的要求能得到满足 ?对,使用 dojo.partial!看看你可以如何用 dojo.partial来做:

 


它所做的是创建一个新的函数,这个函数封装了 dataLoaded函数并且指定了第一个参数 "firstValue"。需要注意的是, dojo.partial允许你指定多个参数,因此你可以定义任意数量的参数作为函数固定前置的参数。

dojo.isString, dojo.isArray, dojo.isFunction, dojo.isObject, dojo.isArrayLike, dojo.isAlien

顾名思义,这几个函数都是用来判断给定的参数是否是特定的类型,是的话返回 true,否则返回 false。

dojo.isString:判断给定参数是否是字符串

dojo.isArray:判断一个对象是不是一个真正的数组。注意, dojo.isArray检查的是所传的值是不是由当前框架 (frame)里的 Array构造函数所创建的实例。如果一个数组来自于一个不同的框架,它就不是当前框架的数组,所以 dojo.isArray会返回 false。另外, arguments对象并不是一个数组。你可以用 dojo.isArrayLike(value)来检测这些类似数组的对象。

dojo.isFunction: 检查所传参数是不是一个函数对象。注意,这对于由dojo.declare 所创建的类(的构造函数)也一样有效。一个常见的模式是,得到一个字符串形式的类名全称,你可以用 dojo.isFunction来判断是否需要将其转换为一个函数:

 

 


当然,你也可以用dojo.isString 来做类似的事情。

dojo.isAlien用于检查所传参数是不是一个内建函数。

dojo.isObject用于检查所传参数是不是一个对象。

 

以上就是部分Dojo对于JavaScript的基础扩展函数,在下一部分中,会介绍Dojo对面向对象(OO)及包机制(package system)部分的一些常用函数。

DOJO.js 最优秀的js 框架 1.9.3 非常优秀的js框架dojo,目前版本1.9.3 立即下载

相关推荐

dojo的js文件

dojo的js文件,dojo.js压缩文件

关于JavaScript与Dojo的一点备忘

1.     前言 由于博主在2010.7至2011.7之间,有幸参与了一个Web项目的开发,一直想找个机会总结一下关于这个项目的收获,一直也没有找到时间,正好最近比较闲,就简单总结一下。由于一直低头做业务,项目也比较紧,就对技术上的了解不多,仅仅是了解一些简单技术,但也小小的总结一下吧,在以后的工作中一定注意,必须要对基础技术有了解,不能仅仅知道怎么用,该怎么开发就可以,一定要深入挖掘可学习的

onlysis的专栏 962

蔡氏电路matlab仿真代码-Machine-Learning-Dojo:我学习和训练机器学习技能的道场

matlab仿真代码机器学习Dojo项目 用Python编程语言重新实现Coursera上的Andrew Ng教授在课程中的所有编程作业。 作者:Pham Quang Nhat Minh 重新安装使用Python语言在Coursera上的机器学习课程的编程练习(Andrew Ng教授教授)。 通过这个项目,我有机会“刷新”我的机器学习知识并练习我的Python编程技能,特别是提高了我在python中使用库进行科学计算的经验,例如scikit-learn,numpy,scipy,matplotlib-非常方便的库在我看来,python可以等同于Matlab。 注意:在Firefox上,ipython Notebook中的数学公式显示错误。 Safari和Chrome毫无问题地显示数学公式。 编程作业清单 线性回归 线程数: 在以下位置查看ipython笔记本 逻辑回归 线程数: 在以下位置查看ipython笔记本 多类分类和神经网络 线程数: 在以下位置查看ipython笔记本 Logistic回归部分的Python脚本。 显示100个笔迹的Python脚本:。 神经网络学习 线程数:

Dojo 扩展 javascript 核心库 - dojo.hitch

dojo.hitch 是在 Dojo 中直接或间接被广泛使用的函数. hitch 的中文意思是: 钩住,拴住. 在 Dojo 中, dojo.hitch() 的作用是给一个方法绑定其执行上下文. 在 Dojo 中, dojo.hitch 函数非常重要. 原因有两点:  1. Javascript 中, 函数不与定义它们的上下文即作用域绑定 2. 在 Dojo 中, 很多函数都用 h

Patrick's 专栏 4542

2015年全国大学生电子设计大赛综合测评题

2015年全国大学生电子设计大赛综合测评题 题目如下: 一、555产生可调方波 555定时器是一种集成电路芯片,常被用于定时器、脉冲产生器和振荡电路。555可被作为电路中的延时器件、触发器或起振元件。 555定时器可组成单稳态电路、多稳态电路和无稳态电路。产生方波其实就是制造一个无稳态电路。 555定时器的引脚功能: 其中: DIS引脚与OUT脚电平一致 TRIG: 当此引脚电压降至1/3VCC(或由控制端决定的阈值电压)时输出端给出高电平。 THR:当此引脚电压升至2/3VCC(或由控制端决定的阈值电压

m0_47066484的博客 3万+

DP接口详解:从主链路到AUX通道的完整解析(附常见问题排查)

本文深入解析DP接口的三大核心子系统:主链路的高速数据传输、AUX通道的智能协商以及HPD信号线的即时响应。详细介绍了DP接口的物理层设计要点、链路训练与均衡技术,并提供了常见故障排查指南,帮助工程师解决实际应用中的技术难题。

weixin_30790841的博客 462

Dojo学习和常用知识

Dojo 是一个流行的 JavaScript 库,用于开发 Web 应用程序。它提供了许多功能,如 DOM 操作、事件处理、动画效果、数据存储和许多其他实用功能。在今天的 Web 开发中,Dojo 仍然被广泛使用,尤其是在企业级应用程序开发中。下面是一个详细的 Dojo 详解,包括代码实例。

AI时代光年 1753

2025-08-19利用opencv检测图片中文字及图片的坐标

该代码实现了图片中中文文本的检测与位置计算功能。主要使用CnOcr库进行OCR识别,结合OpenCV和PIL库处理图像。功能包括:1)检测图片中的中文文本及位置坐标;2)计算每个文本的像素宽度和高度;3)在原图上绘制文本边界框并标注识别结果。代码通过put_chinese_text函数解决中文显示问题,最终输出各文本内容、坐标位置及尺寸信息。适用于需要获取图片中文字精确位置的应用场景。

m0_58149406的博客 395

Dojo Javascript 编程规范(转)

前言 良好的JavaScript书写习惯的优点不言而喻,今天向大家推荐Dojo Javascript编程规范,相当不错的 Javascript 编程风格规范,建议大家可以借鉴一下此规范编写 Javascript。感谢i.feelinglucky的翻译。 序 Any violation to this guide is allowed if it enhances readabili...

coderidea 232

SAP固定资产原值与净值取值逻辑全解析:从数据表到ABAP实战

在企业资源计划(ERP)系统中,固定资产的价值管理是财务会计的核心模块,其关键在于准确核算资产原值与净值。从技术原理上看,这涉及对资产全生命周期业务(如购置、折旧、转移、报废)的财务建模,以及底层数据表(如ANLC、ANEP)的精准关联与计算。掌握这一逻辑的技术价值在于,能够确保财务报表数据的准确性,满足合规性要求,并为管理决策提供可靠依据。在SAP ECC或S/4HANA系统的应用场景中,ABAP开发者与财务顾问常需通过编写报表程序,从复杂的数据结构中提取资产价值信息。本文聚焦于SAP资产会计模块,深入剖

weixin_30984001的博客 393

深入掌握英飞凌TriCore中断向量表

摘要:本文探讨了英飞凌Tc277芯片中断机制的原理与实现,重点解析了中断向量表基地址的链接文件定义方式、BIV寄存器的初始化过程以及每个中断条目的32字节空间分配规则。通过分析中断向量号(1-255)的计算方法,阐明了中断条目跳转地址(如STM0中断向量号37对应0x800F04A0)的生成逻辑。文章还揭示了.map文件中14字节跳转指令的组成原理,以及最终通过a14寄存器跳转到实际中断函数(如stm0Sr0ISR)的执行流程,为嵌入式开发人员理解中断处理机制提供了清晰的技术路径。

IT技术猿猴的博客 1713

部分Dojo常用函数简介(四)——String及Array扩展

每个Ajax 框架都对Javascript 做了扩展,提供了很多常用函数,增强了 Javascript 的开发效率。在这里将对部分Dojo 中的常用函数做简单的介绍。由于Dojo的常用函数较多,也为方便大家阅读,将这些常用函数分为了五个类别分别进行介绍。本文将介绍第四部分的内容:String及Array扩展。

Dojo中文博客 9667

ADI官方例程HDL和No-OS生成Vivado工程

这一步是选择下载源,一般都是选择国内镜像,因为国外的源太慢了,这里选择阿里的镜像,如果没有这个选项可以在下面的User URL里添加就行,选择好源后然后点击下一步。下一步会从你选择的源上下载软件包目录,如果提示Unable to get setup from https://xxxxxx/,返回上一步,选择别的源,例如第二个163网易的源。然后就是你想要安装在哪了,下面的选项好像会决定环境变量存放在哪,不过一般都是个人电脑选择第一个默认的就行,然后点下一步。下好之后双击打开,就是这个界面了,直接点下一步。

代码匠的博客 3832

部分Dojo常用函数简介(三)——页面生命周期及DOM相关常用函数

每个Ajax 框架都对Javascript 做了扩展,提供了很多常用函数,增强了 Javascript 的开发效率。在这里将对部分Dojo 中的常用函数做简单的介绍。由于Dojo的常用函数较多,也为方便大家阅读,将这些常用函数分为了五个类别分别进行介绍。本文将介绍第三部分的内容:页面生命周期及DOM相关常用函数。

Dojo中文博客 1万+

QMK固件OLED显示屏配置教程:从零开始实现个性化键盘显示(实操部分)

本教程详细介绍了如何从零开始配置QMK固件的OLED显示屏,实现个性化键盘显示。首先,文章解释了OLED显示屏的基本概念及其在键盘中的应用,并介绍了I2C和SPI两种通信方式。接着,教程逐步指导用户如何在QMK固件中启用OLED功能,包括在rules.mk中启用OLED、在halconf.h和mcuconf.h中配置I2C功能,以及在config.h中设置I2C和OLED参数。最后,教程展示了如何在keymap.c中编写代码,实现OLED显示内容,并提供了进阶定制功能,如显示当前层信息、按键状态和QMK L

Despacito0o的博客 580

016、自动标注方案实战:用大模型(SAM/Grounding DINO)生成 YOLO 格式伪标签

本文介绍了一种利用大模型自动生成YOLO格式伪标签的实战方案。针对传统人工标注效率低、易出错的问题,作者提出结合Grounding DINO(零样本检测)和SAM(精细分割)的优势:前者快速生成候选框,后者优化边界精度。文章详细阐述了技术选型理由(平衡速度与精度)、环境搭建避坑指南(关键依赖版本)、核心三步流程(检测-分割-格式转换)以及后处理技巧(置信度分级过滤)。实验表明,该方案相比纯人工标注可节省80%时间,且经过SAM优化的边界框精度提升10-15%。特别强调了工程细节:文本描述格式、阈值设定、小目

zzfmlxs的博客 544

dojo框架简介

一.dojo介绍 dojo是一个js的工具集,一个面向对象的js框架(在widget中更能体现这点),根据功能分成多个module,每个module又分为多个package,可以根据程式的需要导入不同的package,类似于JAVA。  官方网站: http://dojotoolkit.org/  操作指南: http://manual.dojotoolkit.org/WikiHome 

sinat_32349327的博客 2979

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

部分Dojo常用函数简介(二)——面向对象(OO)及包机制(package system)

每个Ajax 框架都对Javascript 做了扩展,提供了很多常用函数,增强了 Javascript 的开发效率。在这里将对部分Dojo 中的常用函数做简单的介绍。由于Dojo的常用函数较多,也为方便大家阅读,将这些常用函数分为了五个类别分别进行介绍。本文将介绍第二部分的内容:面向对象(OO)及包机制(package system)常用函数。

Dojo中文博客 8366

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

掌握Dojo工具包,第1部分:Dojo入门简介(2)

常用包介绍Dojo 1.1.1 提供了上百个包,这些包分别放入三个一级命名空间:Dojo,Dijit 和 DojoX 。其中 Dojo 是核心功能包 , Dijit 中存放的是 Dojo 所有的 Widget 组件,而 DojoX 则是一些扩展或试验功能,DojoX 中的试验功能在成熟之后有可能在后续版本中移入到 Dojo 或 Dijit 命名空间中。由于 Dojo 包种类繁多,下面只列举了最常用的一些包及其功能,以方便读者有个初步了解或供以后查阅。包名 功能 dojo.io 不同的 IO 传输方式。 sc

A Blog Just For Qiailin 1184

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

部分Dojo常用函数简介

来源:http://blog.youkuaiyun.com/dojotoolkit dojo.hitch dojo.hitch是一个优雅的函数。它会返回一个在指定作用域下执行指定语句的函数。通过调用这个函数,你可以很好地控制函数地执行,特别是在涉及到异步操作的时候。 比如下面的例子:   [javascript] view plaincopy

earthhour的专栏 1871

在 Node.js 上使用 Dojo

Node.js 最近非常火热,不仅开源社区对其非常关注,甚至微软对其也提供了官方的支持,从而让 Node.js 也能运行于 Windows 系统,这为 Node.js 的进一步流行奠定了基础。本文将介绍 Node.js 和 Dojo 的模块管理机制,并在此基础上详细介绍在 Node.js 上运行 Dojo 框架的方案。最后通过一个例子,演示如何用 Dojo 的 DTL 模块来解析一个基于 Djan

Dojo中文博客 5849

Dojo历史简介

第一个要记住的名字是Alex Russel。在2004年初,Alex在Informatica公司从事DHTML的开发工作,其时正着手进行一个名为netWindows的项目,用以在Web浏览器环境下提供创建窗口化界面的类库(听起来很有些象Windows操作系统,不是吗?)。Alex想要寻找一个精通DHTML开发的合作者与他一起来进行这个项目,于是接触了网上的DHTML开发社区上的一些杰出的成员,并在2004年4月25日发了一封标题为"Selling the future of DHTML"的邮件,这也引发了D

Dojo中文博客 5299

dojo框架的基本认识

Dojo的全称是Dojo Toolkit,始创于2004年,是当前各种蓬勃发展的JS工具包中的佼佼者。Dojo 为富互联网应用程序(RIA) 的开发提供了完整的端到端的解决方案,包括核心的 JavaScript 库,简单易用的小部件(Widget)系统和一个测试框架,此外,Dojo 的开源开发社区还在不停地为它提供新的功能。

weixin_45774558的博客 3133
上一篇: Javascript图表库: Dojo Charting
下一篇: 部分Dojo常用函数简介(二)——面向对象(OO)及包机制(package system)
dojotoolkit
博客等级 码龄16年 1205粉丝 61原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值