区别一:           for in是javascript 1.0 中发布的.         for each in是作为E4X标准的一部分在javascript 1.6中发布的,而它不是ECMAScript标准的一部分.         这将意味着存在各种浏览器的兼容性问题.for each in,对很多浏览器都不支持的.例如是不支持IE6,IE7,IE8等浏览器的.       区别二:       例:  var 长方形= {  高:"15",  宽:"25&q…
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 var num = 1;   var str = '1';   var test = 1;   test == num   //true 相同类型 相同值   test === num  //true 相同类型 相同值   test !== num  //false test与num类型相同,其值也相同, 非运算肯定是false     num == str   //true 把str转换为数字…
var num = 1; var str = '1'; var test = 1; test == num //true 相同类型 相同值 test === num //true 相同类型 相同值 test !== num //false test与num类型相同,其值也相同, 非运算肯定是false num == str //true 把str转换为数字,检查其是否相等. num != str //false == 的 非运算 num === str //false 类型不同,直接返回fals…
js中的new操作符与Object.create()的作用与区别 https://blog.csdn.net/mht1829/article/details/76785231 2017年08月06日 19:19:26 阅读数:1058 一.new 操作符 JavaScript 中 new 的机制实际上和面向类的语言完全不同. 在 JavaScript 中,构造函数只是一些使用 new 操作符时被调用的函数.它们并不会属于某个类,也不会实例化一个类.实际上,它们甚至都不能说是一种特殊的函数类型,它…
SQL 中详解round(),floor(),ceiling()函数的用法和区别? 原创 2013年06月09日 14:00:21   摘自:http://blog.csdn.net/yueliangge910101/article/details/9064021           应用中使用四舍五入的值,我和我的用户在报表应用中的计算问题存在分歧.所有的代码都在T-SQL中,但是我认为报表问题与数据类型和向下取整或向上取整规则关系密切.请问您有没有这方面的高见?我想看到一些带有不同编码选项的…
js中的等值运算符 js中的相等分为抽象相等和严格相等,他们有什么区别呢. 在说具体算法前,先提下JS数据类型,JS数据类型分为6类:Undefined Null String Number Boolean Object.在这里我们用Type(x)表示x的数据类型 1,抽象相等== x==y的算法过程如下: 1,Type(x)与Type(y)相同: 如果Type(x)为Undefined或Null,则返回true,即:undefined==undefined; null==null返回true…
在js中定义的全局变量是挂在window下的,而window的属性也一样,那么这两者有什么区别呢? 其实这两者还是有小小的区别的,全局变量是不能通过delete操作符删除的,而直接定义在window上的属性是可以删除的. 那么为什么全局变量不能删除呢? 因为全局变量也是个对象,这个对象时通过叫做PropertyDescriptor来定义的. 可以在浏览器中调用Object.getOwnPropertyDescriptor(对象, 属性)来查看 举例: var test = 2; window.t…
1.slice(): Array和String对象都有 在Array中  slice(i,[j]) i为开始截取的索引值,负数代表从末尾算起的索引值,-1为倒数第一个元素j为结束的索引值,缺省时则获取从i到末尾的所有元素 参数返回:返回索引值从i到j的数组,原数组不改变 在String中 slice(i,[j]) 参数说明:i为开始截取的索引值,负数代表从末尾算起的索引值,-1为倒数第一个字符j为结束的索引值,缺省时则获取从i到末尾的所有字符 2.splice() 存在Array中     方法…
在JS中,绑定的事件默认的执行时间是在冒泡阶段执行,而非在捕获阶段(重要),这也是为什么当父类和子类都绑定了某个事件,会先调用子类绑定的事件,后调用父类的事件.直接看下面实例 <!Doctype html> <html> <head> <meta charset="utf-8"> <title></title> <style type="text/css"> *{margin:0;p…
一.返回控制与函数结果, 语法为:return 表达式; 语句结束函数执行,返回调用函数,而且把表达式的值作为函数的结果  二.返回控制, 无函数结果,语法为:return;  在大多数情况下,为事件处理函数返回false,可以防止默认的事件行为.例如,默认情况下点击一个<a>元素,页面会跳转到该元素href属性指定的页.    Return False 就相当于终止符,Return True 就相当于执行符.    在js中return false的作用一般是用来取消默认动作的.比如你单击一…
应该是没有区别的,两者都是生成一个默认的Object对象.js和其它语言一样,一切对象的基类都是Object,所以,new Object()和简易的{}是同样的空对象,就是默认的对象.本来我以为{}应该是一个没有任何属性和方法的对象,但事实证明,var a = {},a.toString()等Object对象所具有的方法,a都具有.由此也可以判断,其实a = {}就是a = new Objcet()的简单实现.就像在java语言中,String str = ""和String str…
var arg1 = 12.2; var arg2 = 12.5; var arg3 = 12.7; ceil():将小数部分一律向整数部分进位 var c1 = Math.ceil(arg1); var c2 = Math.ceil(arg2); var c3 = Math.ceil(arg3); console.log(c1,c2,c3) // 13 13 13 floor():一律舍去,仅保留整数. var f1 = Math.floor(arg1); var f2 = Math.floo…
$email_input.onkeyup=function(event){ // console.log('event handle');//按方向键以及backspce esc有反应 长按字母键也没有反应 // } // $email_input.oninput=function(){ // console.log('event handle');//方向键无反应 backspce esc有反应 长按也有反应 // } // // $email_input.onkeydown=function…
前言 相信很多人都使用过export.export default.import,然而它们到底有什么区别呢? 在看他们之间的区别之前,我们先来看看它们的用法. ES6 import和export的用法 ES6之前已经出现了js模块加载的方案,最主要的是CommonJS和AMD规范.commonjs主要应用于服务器,实现同步加载,如nodejs.AMD规范应用于浏览器,如requirejs,为异步加载.同时还有CMD规范,为同步加载方案如seaJS. ES6在语言规格的层面上,实现了模块功能,而且…
String String的构造方式有n种(据说n==11),常见的例举一二: String s1 = "hello world"; String s2 = new String("hello world"); char[] a = {'h', 'e', 'l', 'l', 'o'}; String s3 = new String(a, 1, 3); // start length String s4 = "hello world"; Strin…
Java并发编程中在使用到ThreadPoolExecutor时,对它的三个关闭方法(shutdown().shutdownNow().awaitTermination())的异同点如下: shutdown() 将线程池状态置为SHUTDOWN,并不会立即停止: 停止接收外部submit的任务 内部正在跑的任务和队列里等待的任务,会执行完 等到第二步完成后,才真正停止 shutdownNow() 将线程池状态置为STOP.企图立即停止,事实上不一定: 跟shutdown()一样,先停止接收外部提…
一直没怎么使用过JavaScript中的bind,call和apply, 今天看到一篇比较好的文章,觉得讲的比较透彻,所以记录和总结如下 首先要理解的第一个概念,JavaScript中函数调用的方式,总结下来,有以下4种 1. 方法调用 2. 正常函数调用 3. 构造器函数调用 4. apply/call 调用 要明白的第2个概念, JavaScript 中的函数,无论是上面哪种函数调用方式,除了你函数声明时定义的形参外,还会自动给函数添加两个形参,分别是this 和 arguments 要明白…
round() 遵循四舍五入把原值转化为指定小数位数,如:round(1.45,0) = 1;round(1.55,0)=2floor()向下舍入为指定小数位数 如:floor(1.45,0)= 1;floor(1.55,0) = 1ceiling()向上舍入为指定小数位数 如:ceiling(1.45,0) = 2;ceiling(1.55,0)=2…
sudo :暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码.缺点是每次执行超级用户权限都要在命令前加上 sudo ,优点是在当前终端再使用 sudo 不要再重复输入密码(只对于当前终端有效). sudo -i:为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令.提示输入密码时该密码为当前账户的密码.没有时间限制.执行该命令后提示符变为"#"而不是"$".想退回普通账户时可以执行&qu…
一.引言 本文主要是利用一个例子,讲一下原生js中常用的四种循环方式的使用与区别: 实现效果: 在网页中弹出框输入0   网页输出“欢迎下次光临” 在网页中弹出框输入1   网页输出“查询中……” 在网页中弹出框输入2   网页输出“取款中……” 在网页中弹出框输入3   网页输出“转账进行中……” 在网页中弹出框输入其他字符   网页输出“无效按键” 四种循环: for循环 while循环 for  in 循环 for  of 循环 二.for循环 <!doctype html> <h…
其实,在前面的"js的六大数据类型"文章中稍微说了一下引用类型.前面我们说到js中有六大数据类型(五种基本数据类型 + 一种引用类型).下面的章节中,我们将详细讲解引用类型. 1.引用类型的值(即对象)是引用类型的实例. 可能,一开始就有人会问:"什么是引用类型?".如果你学过Java或者PHP编程的话,那么我可以通俗的打个比方的讲下,js中的引用类型就好比PHP或者Java中的Class类:那么引用类型的值(即对象)好比PHP/Java中的Class类实例化后的对…
我们在编写js过程中,难免会遇到一些代码错误问题,需要找出来,有些时候怕因为js问题导致用户体验差,这里给出一些解决方法 js容错语句,就是js出错也不提示错误(防止浏览器右下角有个黄色的三角符号,要不用户体验不好) 复制代码代码如下: window.onerror=function(){return true;}  下面是为了获取js异常信息,方便开发者找回问题 1,try...catch... 复制代码代码如下: <script type="text/javascript"&…
前不久同事询问我js里面怎么给正则中添加变量的问题,遂写篇博客记录下.   一.字面量 其实当我们定义一个字符串,一个数组,一个对象等等的时候,我们习惯用字面量来定义,例如: var s = "string"; var a = [1,2]; var o = {}; 如果需要加入变量,那也是十分简单的事情,比如: var v = "bl"; var s = "string" + v; //"stringbl" var a = […
今天研究js跨域问题的时候发现一篇好博,非常详细地讲解了js几种跨域方法的原理,特分享一下. 原博地址:http://www.cnblogs.com/2050/p/3191744.html 下面正文开始 这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被当作是不同的域. 下表给出了相对http://store.company.com/dir/pag…
关于js中的this this是javascript中一个很特别的关键字,也是一种很复杂的机制,学习this的第一步就是要明白this既不指向函数自身也不指向函数的词法作用域,this实际上是函数被调用时发生的绑定,它指向什么完全取决于函数在哪里被调用. 1. 调用位置 现在来说一下调用位置:调用位置就是函数在代码中被调用的位置(而不是声明的位置). 那么怎么找到它的调用位置呢?最重要的是要分析“调用栈”(就是为了到达当前执行位置所调用的所有函数) function baz(){ //当前调用栈…
在公司用云平台做开发就是麻烦 ,做了很多功能或者有些收获,都没办法写博客,结果回家了自己要把大脑里面记住的写出来. split()这个函数我们并不陌生,但是当前台有许多字段然后随意勾选后的这些参数传递到后台做处理的时候却麻烦了,我们这个时候需要把这些当字符串传递到存储过程,在存储过程里面将这些字符串分割成一个个单独的个体,我这里不说数组,是因为存储过程没有数组这一说. 这时候我们就会想到表值函数.表值函数返回的是一个Table类型的表.说到这里我想很多人都想到了,这不就是一个数组形式么?一个表就…
1.方法定义 call方法: 语法:call([thisObj[,arg1[, arg2[,   [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象. 说明: call 方法可以用来代替另一个对象调用一个方法.call 方法可将一个函数的对象上下文从初始的上下文改变为由 thisObj 指定的新对象. 如果没有提供 thisObj 参数,那么 Global 对象被用作 thisObj. apply方法: 语法:apply([thisObj[,argArray]])…
Sequelize是一个基于promise的关系型数据库ORM框架,这个库完全采用JavaScript开发并且能够用在Node.JS环境中,易于使用,支持多SQL方言(dialect),.它当前支持MySQL,.MariaDB.SQLite.PostgreSQL.Sql Server 数据库. 目前在Node.js中,Sequelize的关注度较高,用的也较多. 因为是基于promise规范,在调用后的处理上不再是callback方式,而是统一的链式调用方式,调用直观,易读. 那么就先用起来吧,…
在javascript的使用过程中,constructor 和prototype这两个概念是相当重要的,深入的理解这两个概念对理解js的一些核心概念非常的重要. 我们在定义函数的时候,函数定义的时候函数本身就会默认有一个prototype的属性,而我们如果用new 运算符来生成一个对象的时候就没有prototype属性.我们来看一个例子,来说明这个 function a(c){ this.b = c; this.d =function(){ alert(this.b); }}var obj =…
通常情况下,在Node.js中我们可以通过underscore的extend或者lodash的merge来合并两个对象,但是对于像下面这种复杂的对象,要如何来应对呢? 例如我有以下两个object: var obj1 = { "name" : "myname", "status" : 0, "profile": { "sex":"m", "isactive" : tr…