- 模拟new的实现
小泡_08f5
new运算符创建一个用户定义的对象类型的实例或具有构造函数的内置对象类型之一模拟new之前,看看new实现了哪些功能//Otaku御宅族,简称宅functionOtaku(name,age){this.name=name;this.age=age;this.habit='Games';}Otaku.prototype.strength=60;Otaku.prototype.sayYourName=
- JS笔记
陈两全
javascript笔记开发语言
9.101.对象javascript中的对象分为3种:自定义对象,内置对象,浏览器对象JavaScript中的所有事物都是对象:字符串、数字、数组、日期,等等。在JavaScript中,对象是拥有属性和方法的数据。属性是与对象相关的值。方法是能够在对象上执行的动作。.关键词()1.1.Object对象1.1.创建对象var对象名称=newObject();2.设置对象属性对象名称.属性名=值;3.
- JS笔记
陈两全
笔记
9.111.Math对象Math对象属于Javascript内置对象,无需实例化(不需要添加new),可以直接使用。只有一个Math.PI的属性1.1.Math对象的方法Math.round(number)//四舍五入整数Math.ceil(number)//向上取整Math.floor(number)//向下取整Math.random()//随机返回0.0~1.0之间的数Math.max(x,y
- 请解释JSP中的九大内置对象及其作用。什么是Java Web中的请求转发和重定向?它们有什么区别?
计算机学长阿伟
javajava前端开发语言
请解释JSP中的九大内置对象及其作用。JSP(JavaServerPages)中的九大内置对象(也称为隐式对象或自动对象)是JSP容器为每个页面提供的Java对象,这些对象在JSP页面被转换成Servlet时自动可用,无需显式声明。这些对象极大地简化了JSP页面的开发,因为它们提供了对Web应用程序中常见功能的直接访问。以下是九大内置对象及其作用的详细解释:request:javax.servle
- vue调起微信支付,vue获取openid
吴小雨
VUE微信公众号充值vue调起微信支付vue获取openid
vue调起微信支付vue获取code、openidvue调起微信支付//微信调起weixinPay:function(){if(typeofWeixinJSBridge=="undefined"){//微信浏览器内置对象。参考微信官方文档if(document.addEventListener){document.addEventListener('WeixinJSBridgeReady',thi
- JavaWeb开发知识总结(JSP,EL,JSTL)
Sunmos
JavaWebjavawebjspEL表达式JSTL标签库
JavaWeb开发知识总结(JSP,EL,JSTL)1.JSP概述JSP技术:Java服务器端页面(JavaServerPages),是一种动态网页开发技术。JSP的组成:HTML+Java代码+JSP自身元素。JSP自身元素包括JSP指令,JSP动作标签和JSP的内置对象。2.JSP执行流程JSP的本质是Servlet,tomcat服务器会将jsp文件进行编译生成一个servlet.java文件
- day38-测试平台搭建之前端vue学习-ES6
开测开测
开发语言测试自动化测试测试开发vscodevuees6
一、为什么要学习ES6?1.1.ES5语言的先天性不足。比如变量提升、内置对象的方法不灵活、模块化实现不完善等等1.2.为了后面vue、尤其是react框架做好了准备1.3.目前大部分公司的项目都在使用es6二、ES6新特性2.1.let和const命令let和const//var//vara=2//1.let声明变量,没有变量提升//console.log(a);//leta=10;//cons
- JS中【Data】详解
OEC小胖胖
JavaScriptjavascript开发语言ecmascript前端html
在JavaScript中,“Date”是一个内置对象,专门用于处理日期和时间。Date对象提供了多种方法,能够让你创建、操作和格式化日期和时间数据。下面我们将详细讲解Date对象的各个方面,包括它的创建、方法、使用场景和一些常见的坑。1.Date对象的创建1.1无参数构造constnow=newDate();如果不传递任何参数,Date对象将会默认创建一个表示当前日期和时间的对象。1.2通过时间戳
- 笔记:node.js基础
一只小bug。
node.js
1.初识node.jsNode.js是一个基于chromeV8引擎的javaScript运行环境。浏览器中js的运行环境=chromeV8引擎+webAPI(BOM、DOM、ajax等)。Node.js中js的运行环境=V8引擎+内置API(fs、path、http、js内置对象等)。终端快捷键:tab(补全路径)、esc(清空当前已输入的命令)、clear(清空终端)。2.fs文件模块系统fs模
- [java][代码]JSP隐含对象
awonw
javajava开发语言
1、out隐含对象(输出对象)直接用于在JSP页面输出内容javax.servlet.jsp.JspWriter(抽象类)继承自java.io.WriterJSP中的out对象最终被转化成servlet中的JspWriter对象2、request内置对象(请求对象)用于获取Http请求相关信息,比如查询字符串,表单数据javax.servlet.http.HttpServletRequest3、p
- 2024 web前端面试题(持续更新)
Max·米
前端javascript开发语言面试
1.js有哪些基本数据类型Undefined、Null、Boolean、Number、String、Symbol(es6新增)、Bigint(谷歌67版本新增)2.js有哪些引用数据类型Object(对象)、Array(数组)、Function(函数)3.js有哪些内置对象?Object、Array、Boolean、Number,String,date,math,error,promise,reg
- ES6之Proxy代理
27亿光年中的小小尘埃
什么是Proxy代理ES6让开发者能进一步接近JS引擎的能力,这些能力原先只存在于内置对象上。语言通过代理(proxy)暴露了在对象上的内部工作,代理是一种封装,能够拦截并改变JS引擎的底层操作。人话是:把代理看做是设计模式代理模式中的一种,有一个代理对象来代理本体,而ES6的Proxy牛逼的一点是可以把本体没法改变的内部属性改了代理与反射是什么?通过调用newProxy(),你可以创建一个代理用
- 前端|JavaScript 基础 - 第5天(黑马笔记)
Sunshine.King
前端前端javascript笔记
JavaScript基础-第5天目录JavaScript基础-第5天一、对象1.语法2.属性和访问3.方法和调用4.null遍历对象二、内置对象Math属性方法三、综合案例1.猜数字游戏JS2.猜数字游戏(设定次数)JS3.随机点名JS4.随机颜色JS知道对象数据类型的特征,能够利用数组对象渲染页面理解什么是对象,掌握定义对象的语法掌握数学对象的使用一、对象对象是JavaScript数据类型的一种
- 使用navigator.userAgent.toLowerCase()判断浏览器的类型
回不去的那些时光
navigator是HTML中的内置对象,包含浏览器的信息;userAgent是navigator的属性方法,可以返回由客户机发送服务器的头部的值,作用其实就是就是返回当前用户所使用的是什么浏览器,toLowerCase()是将转换为小写。区分安卓和IOS设备varua=navigator.userAgent.toLowerCase();if(/android|adr/gi.test(ua)){/
- JavaScript
寥寥十一
JavaScript介绍js的基本数据类型。Undefined、Null、Boolean、Number、String、ECMAScript2015新增:Symbol(创建后独一无二且不可变的数据类型)介绍js有哪些内置对象?Object是JavaScript中所有对象的父对象数据封装类对象:Object、Array、Boolean、Number和String其他对象:Function、Argume
- 网络应用之javascript获取标签元素
lucky-zhao
网络应用http开发语言网络网络协议javascript
获取标签元素学习目标能够写出获取标签元素的操作1.获取标签元素可以使用内置对象document上的getElementById方法来获取页面上设置了id属性的标签元素,获取到的是一个html对象,然后将它赋值给一个变量,比如:varoDiv=document.getElementById('div1');alert(oDiv);这是一个div元素说明:上面的代码,如果把javascript写在元素
- 大前端完整学习路线(详解)
强哥科技兴
第一阶段:HTML+CSS:HTML进阶、CSS进阶、div+css布局、HTML+css整站开发、JavaScript基础:Js基础教程、js内置对象常用方法、常见DOM树操作大全、ECMAscript、DOM、BOM、定时器和焦点图。JS基本特效:常见特效、例如:tab、导航、整页滚动、轮播图、JS制作幻灯片、弹出层、手风琴菜单、瀑布流布局、滚动事件、滚差视图。JS高级特征:正则表达式、排序算
- 浏览器详解
Fraday
内置对象windoweg:window.innerWidth||document.body.clientWidth;historyeg:go(-1)locationeg:hrefnavigationeg:online:true(常用表示浏览器是否连接到了inter网)screeneg:deviceXDPI(可能会用到表示屏幕实际的水平DBI)http://caniuse.com确定某个api的兼容
- jsp与servlet的区别与联系
AshinX
区别:1)jsp经编译后就变成了servlet。(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类)2)jsp更擅长表现于页面显示,servlet更擅长于逻辑控制。3)servlet中没有内置对象,jsp中的内置对象都是必须通过:HttpServletRequest对象、HttpServletResponse
- express提取出路由模块创建http服务
chen_cheng
如果仅仅是在一个文件中进行服务创建,相对于维护性不高,同时当路由增加的时候,会造成结构不清晰的情况的产生,因此可以通过将路由模块单独抽取出来,单独进行维护操作。但是此时就会出现一个问题,如何建立服务入口模块app.js与路由模块router.js建立连接?最开始一般会想到通过模块内置对象module.exports导出,app.js进行导入://router.jsmodule.exports=fu
- 前端面试——如何理解this指向?
DW14687
面试题目1024程序员节javascript前端
目录前言一、this在不同函数中的指向1.普通函数this指向全局对象2.构造函数指向new这个对象3.箭头函数指向上一级作用域4.对象函数指向这个对象5.数组中有函数,指向这个数组6.apply、call调用时指向第一个参数,没有则默认window7.window内置对象指向window对象二、预编译1.js执行步骤2.预编译作用3.预编译步骤前言this指向真的是老生常谈的问题,在八股文当中也
- 尚学堂052天总结+JSP
人间草木为伴
052天+++行百里者半九十,想要在一个行业里成为顶尖人才,一定满足一万小时定律,要想学好JAVA,需要持之以恒不断地努力,每天都要勤思考+善于询问+解决问题!知识温故而知新>>>>>>成员变量,局部变量和静态变量的区别和概念今天学到的知识>>>>>>相对路径与绝对路径的概念JSP中三种注释的类型JSP中九个内置对象及其方法第一个JSP第一个页面所展示的内容jsp的概念特点和第一个jsp页面简述什
- Web前端开发学习笔记08--JS基础语法
wi...
前端开发学习前端javascript
JS基础基础语法1、数据类型2、流程控制2.1分支结构2.2循环结构3、数组4、函数5、预解析6、对象6.1自定义对象6.2内置对象基础语法JS位置JS书写位置示例行内式内嵌式alert('hello');外部JS文件输入输出语句方法说明alert(msg)浏览器弹出警示框console.log(msg)浏览器控制台打印输出信息prompt(info)浏览器弹出输入框,用户可以输入变量初始化、命名
- ES6新增特性(二)
李小白呀
ES6的内置对象扩展Array的扩展方法一、Array的扩展方法1.扩展运算符(展开语法)扩展运算符可以将数组或者对象转为用逗号分隔的参数序列letary=[1,2,3];...ary//1,2,3console.log(...ary);//123,相当于下面的代码console.log(1,2,3);扩展运算符可以应用于合并数组//方法一letary1=[1,2,3];letary2=[3,4,
- 服务端小程序 Servlet
善倾
「英文时间」:servlet它是由server和applet两个单词拼接造出来的一个词,表示服务端小程序。Servlet实现了CGI接口,因此它能够拿到Tomcat传递过来的内置对象,实现动态网页应用程序的编写。它是纯Java程序编写的一个web组件,在MVC设计模式中通常充当控制器的角色,Tomcat会给每一次用户请求都分配一个线程来执行相关的操作,所以它必须被设计成是线程安全的。要想编写一个S
- 前端JavaScript知识点
hwj6820
1,介绍js的基本数据类型。Undefined、Null、Boolean、Number、String2,介绍js有哪些内置对象?Object是JavaScript中所有对象的父对象数据封装类对象:Object、Array、Boolean、Number和String其他对象:Function、Arguments、Math、Date、RegExp、Error3,JavaScript原型,原型链?有什么
- JSP九大内置对象及四个作用域
聂叼叼
request请求对象类型javax.servlet.ServletRequest作用域Requestresponse响应对象类型javax.servlet.SrvletResponse作用域PagepageContext页面上下文对象类型javax.servlet.jsp.PageContext作用域Pagesession会话对象类型javax.servlet.http.HttpSession作
- 面试 JavaScript 框架八股文十问十答第四期
程序员小白条
面试八股文系列面试javascript职场和发展前端csshtml项目实战
面试JavaScript框架八股文十问十答第四期作者:程序员小白条,个人博客相信看了本文后,对你的面试是有一定帮助的!关注专栏后就能收到持续更新!⭐点赞⭐收藏⭐不迷路!⭐1)new操作符的实现原理new操作符用于创建一个用户定义的对象类型的实例或具有构造函数的内置对象的实例。其主要步骤包括:创建一个新对象。将构造函数的作用域赋给新对象(因此this就指向了这个新对象)。执行构造函数中的代码,为这个
- 深度解析:JSP作用域与特殊对象,看完你肯定懂了!
前程有光
引言:JSP中一共有四大作用域,所谓的“作用域”是指“信息共享的范围”,即一个“信息”能够在多大的范围内是有效的。一、作用域通信对象:JSP内置对象的四个作用域分别为:pageContext、request、session、application。作用域表如下:名称作用域pageContext当前页内有效request同一个请求内有效session同一个会话内有效application同一个应用内
- js的内置对象有哪些
魔仙堡杠把子灬
世人万千,再难遇我在此附上我的QQ:2489757828有问题的话可以一同探讨我的github:李大玄我的私人博客:李大玄我的:李大玄我的CSDN:李大玄arguments函数参数的集合arguments[]函数参数的数组Arguments一个函数的参数和其他属性Arguments.callee当前正在运行的函数Arguments.length传递给函数的参数的个数Array数组length属性动
- java观察者模式
3213213333332132
java设计模式游戏观察者模式
观察者模式——顾名思义,就是一个对象观察另一个对象,当被观察的对象发生变化时,观察者也会跟着变化。
在日常中,我们配java环境变量时,设置一个JAVAHOME变量,这就是被观察者,使用了JAVAHOME变量的对象都是观察者,一旦JAVAHOME的路径改动,其他的也会跟着改动。
这样的例子很多,我想用小时候玩的老鹰捉小鸡游戏来简单的描绘观察者模式。
老鹰会变成观察者,母鸡和小鸡是
- TFS RESTful API 模拟上传测试
ronin47
TFS RESTful API 模拟上传测试。
细节参看这里:https://github.com/alibaba/nginx-tfs/blob/master/TFS_RESTful_API.markdown
模拟POST上传一个图片:
curl --data-binary @/opt/tfs.png http
- PHP常用设计模式单例, 工厂, 观察者, 责任链, 装饰, 策略,适配,桥接模式
dcj3sjt126com
设计模式PHP
// 多态, 在JAVA中是这样用的, 其实在PHP当中可以自然消除, 因为参数是动态的, 你传什么过来都可以, 不限制类型, 直接调用类的方法
abstract class Tiger {
public abstract function climb();
}
class XTiger extends Tiger {
public function climb()
- hibernate
171815164
Hibernate
main,save
Configuration conf =new Configuration().configure();
SessionFactory sf=conf.buildSessionFactory();
Session sess=sf.openSession();
Transaction tx=sess.beginTransaction();
News a=new
- Ant实例分析
g21121
ant
下面是一个Ant构建文件的实例,通过这个实例我们可以很清楚的理顺构建一个项目的顺序及依赖关系,从而编写出更加合理的构建文件。
下面是build.xml的代码:
<?xml version="1
- [简单]工作记录_接口返回405原因
53873039oycg
工作
最近调接口时候一直报错,错误信息是:
responseCode:405
responseMsg:Method Not Allowed
接口请求方式Post.
- 关于java.lang.ClassNotFoundException 和 java.lang.NoClassDefFoundError 的区别
程序员是怎么炼成的
真正完成类的加载工作是通过调用 defineClass来实现的;
而启动类的加载过程是通过调用 loadClass来实现的;
就是类加载器分为加载和定义
protected Class<?> findClass(String name) throws ClassNotFoundExcept
- JDBC学习笔记-JDBC详细的操作流程
aijuans
jdbc
所有的JDBC应用程序都具有下面的基本流程: 1、加载数据库驱动并建立到数据库的连接。 2、执行SQL语句。 3、处理结果。 4、从数据库断开连接释放资源。
下面我们就来仔细看一看每一个步骤:
其实按照上面所说每个阶段都可得单独拿出来写成一个独立的类方法文件。共别的应用来调用。
1、加载数据库驱动并建立到数据库的连接:
Html代码
St
- rome创建rss
antonyup_2006
tomcatcmsxmlstrutsOpera
引用
1.RSS标准
RSS标准比较混乱,主要有以下3个系列
RSS 0.9x / 2.0 : RSS技术诞生于1999年的网景公司(Netscape),其发布了一个0.9版本的规范。2001年,RSS技术标准的发展工作被Userland Software公司的戴夫 温那(Dave Winer)所接手。陆续发布了0.9x的系列版本。当W3C小组发布RSS 1.0后,Dave W
- html表格和表单基础
百合不是茶
html表格表单meta锚点
第一次用html来写东西,感觉压力山大,每次看见别人发的都是比较牛逼的 再看看自己什么都还不会,
html是一种标记语言,其实很简单都是固定的格式
_----------------------------------------表格和表单
表格是html的重要组成部分,表格用在body里面的
主要用法如下;
<table>
&
- ibatis如何传入完整的sql语句
bijian1013
javasqlibatis
ibatis如何传入完整的sql语句?进一步说,String str ="select * from test_table",我想把str传入ibatis中执行,是传递整条sql语句。
解决办法:
<
- 精通Oracle10编程SQL(14)开发动态SQL
bijian1013
oracle数据库plsql
/*
*开发动态SQL
*/
--使用EXECUTE IMMEDIATE处理DDL操作
CREATE OR REPLACE PROCEDURE drop_table(table_name varchar2)
is
sql_statement varchar2(100);
begin
sql_statement:='DROP TABLE '||table_name;
- 【Linux命令】Linux工作中常用命令
bit1129
linux命令
不断的总结工作中常用的Linux命令
1.查看端口被哪个进程占用
通过这个命令可以得到占用8085端口的进程号,然后通过ps -ef|grep 进程号得到进程的详细信息
netstat -anp | grep 8085
察看进程ID对应的进程占用的端口号
netstat -anp | grep 进程ID
&
- 优秀网站和文档收集
白糖_
网站
集成 Flex, Spring, Hibernate 构建应用程序
性能测试工具-JMeter
Hmtl5-IOCN网站
Oracle精简版教程网站
鸟哥的linux私房菜
Jetty中文文档
50个jquery必备代码片段
swfobject.js检测flash版本号工具
- angular.extend
boyitech
AngularJSangular.extendAngularJS API
angular.extend 复制src对象中的属性去dst对象中. 支持多个src对象. 如果你不想改变一个对象,你可以把dst设为空对象{}: var object = angular.extend({}, object1, object2). 注意: angular.extend不支持递归复制. 使用方法: angular.extend(dst, src); 参数:
- java-谷歌面试题-设计方便提取中数的数据结构
bylijinnan
java
网上找了一下这道题的解答,但都是提供思路,没有提供具体实现。其中使用大小堆这个思路看似简单,但实现起来要考虑很多。
以下分别用排序数组和大小堆来实现。
使用大小堆:
import java.util.Arrays;
public class MedianInHeap {
/**
* 题目:设计方便提取中数的数据结构
* 设计一个数据结构,其中包含两个函数,1.插
- ajaxFileUpload 针对 ie jquery 1.7+不能使用问题修复版本
Chen.H
ajaxFileUploadie6ie7ie8ie9
jQuery.extend({
handleError: function( s, xhr, status, e ) {
// If a local callback was specified, fire it
if ( s.error ) {
s.error.call( s.context || s, xhr, status, e );
}
- [机器人制造原则]机器人的电池和存储器必须可以替换
comsci
制造
机器人的身体随时随地可能被外来力量所破坏,但是如果机器人的存储器和电池可以更换,那么这个机器人的思维和记忆力就可以保存下来,即使身体受到伤害,在把存储器取下来安装到一个新的身体上之后,原有的性格和能力都可以继续维持.....
另外,如果一
- Oracle Multitable INSERT 的用法
daizj
oracle
转载Oracle笔记-Multitable INSERT 的用法
http://blog.chinaunix.net/uid-8504518-id-3310531.html
一、Insert基础用法
语法:
Insert Into 表名 (字段1,字段2,字段3...)
Values (值1,
- 专访黑客历史学家George Dyson
datamachine
on
20世纪最具威力的两项发明——核弹和计算机出自同一时代、同一群年青人。可是,与大名鼎鼎的曼哈顿计划(第二次世界大战中美国原子弹研究计划)相 比,计算机的起源显得默默无闻。出身计算机世家的历史学家George Dyson在其新书《图灵大教堂》(Turing’s Cathedral)中讲述了阿兰·图灵、约翰·冯·诺依曼等一帮子天才小子创造计算机及预见计算机未来
- 小学6年级英语单词背诵第一课
dcj3sjt126com
englishword
always 总是
rice 水稻,米饭
before 在...之前
live 生活,居住
usual 通常的
early 早的
begin 开始
month 月份
year 年
last 最后的
east 东方的
high 高的
far 远的
window 窗户
world 世界
than 比...更
- 在线IT教育和在线IT高端教育
dcj3sjt126com
教育
codecademy
http://www.codecademy.com codeschool
https://www.codeschool.com teamtreehouse
http://teamtreehouse.com lynda
http://www.lynda.com/ Coursera
https://www.coursera.
- Struts2 xml校验框架所定义的校验文件
蕃薯耀
Struts2 xml校验Struts2 xml校验框架Struts2校验
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 2015年7月11日 15:54:59 星期六
http://fa
- mac下安装rar和unrar命令
hanqunfeng
mac
1.下载:http://www.rarlab.com/download.htm 选择
RAR 5.21 for Mac OS X 2.解压下载后的文件 tar -zxvf rarosx-5.2.1.tar 3.cd rar sudo install -c -o $USER unrar /bin #输入当前用户登录密码 sudo install -c -o $USER rar
- 三种将list转换为map的方法
jackyrong
list
在本文中,介绍三种将list转换为map的方法:
1) 传统方法
假设有某个类如下
class Movie {
private Integer rank;
private String description;
public Movie(Integer rank, String des
- 年轻程序员需要学习的5大经验
lampcy
工作PHP程序员
在过去的7年半时间里,我带过的软件实习生超过一打,也看到过数以百计的学生和毕业生的档案。我发现很多事情他们都需要学习。或许你会说,我说的不就是某种特定的技术、算法、数学,或者其他特定形式的知识吗?没错,这的确是需要学习的,但却并不是最重要的事情。他们需要学习的最重要的东西是“自我规范”。这些规范就是:尽可能地写出最简洁的代码;如果代码后期会因为改动而变得凌乱不堪就得重构;尽量删除没用的代码,并添加
- 评“女孩遭野蛮引产致终身不育 60万赔偿款1分未得”医腐深入骨髓
nannan408
先来看南方网的一则报道:
再正常不过的结婚、生子,对于29岁的郑畅来说,却是一个永远也无法实现的梦想。从2010年到2015年,从24岁到29岁,一张张新旧不一的诊断书记录了她病情的同时,也清晰地记下了她人生的悲哀。
粗暴手术让人发寒
2010年7月,在酒店做服务员的郑畅发现自己怀孕了,可男朋友却联系不上。在没有和家人商量的情况下,她决定堕胎。
12月5日,
- 使用jQuery为input输入框绑定回车键事件 VS 为a标签绑定click事件
Everyday都不同
jspinput回车键绑定clickenter
假设如题所示的事件为同一个,必须先把该js函数抽离出来,该函数定义了监听的处理:
function search() {
//监听函数略......
}
为input框绑定回车事件,当用户在文本框中输入搜索关键字时,按回车键,即可触发search():
//回车绑定
$(".search").keydown(fun
- EXT学习记录
tntxia
ext
1. 准备
(1) 官网:http://www.sencha.com/
里面有源代码和API文档下载。
EXT的域名已经从www.extjs.com改成了www.sencha.com ,但extjs这个域名会自动转到sencha上。
(2)帮助文档:
想要查看EXT的官方文档的话,可以去这里h
- mybatis3的mapper文件报Referenced file contains errors
xingguangsixian
mybatis
最近使用mybatis.3.1.0时无意中碰到一个问题:
The errors below were detected when validating the file "mybatis-3-mapper.dtd" via the file "account-mapper.xml". In most cases these errors can be d