<script type="text/javascript"> 如果你想写 if (!false){ alert('false'); } 不妨考虑写成: false || alert('false'); false || alert('false'); true || alert('true'); //output false; 用"||"的情况下,第一个条件true,不检测第二个直接返回true.第一个条件false,会执行第二个条件检测 false…
关于JavaScript中的类型判断,我想大部分JavaScripter 都很清楚 typeof 和  instanceof,却很少有人知道 constructor,以及constructor与前面二者的关系 typeof console.log(typeof 1); //number console.log(typeof "宋远溪"); // string console.log(typeof true); // boolean console.log(typeof {}); //…
//JavaScript根据文件名后缀判断是否图片文件 //图片文件的后缀名 var imgExt = new Array(".png",".jpg",".jpeg",".bmp",".gif"); //获取文件名后缀名 String.prototype.extension = function(){ var ext = null; var name = this.toLowerCase(); var i…
如果你没有注意过这个问题,那么这个标题应该会让你感到困惑,判断数据类型这么基础的问题能有什么坑呢? 少年,你不能太天真了,我们朝夕面对的这门语言,可是JavaScript呀,任何你觉得已经习以为常的东西都可能瞬间转化成一个大坑,令人百思不得其解. 但是正是因为同样的原因,我们可以在学习和使用JavaScript这门语言的时候提出和讨论一些这门语言独有的,十分有趣的问题.比如我们今天要讨论的,在JavaScript当中如何判断一个数组是数组. JavaScript有五种方法可以确定一个值到底是什么…
读jquery源码的时候,发现作者为了让创建jquery对象更容易使用了用函数返回对象的方法 jQuery = function( selector, context ) { return new jQuery.fn.init( selector, context, rootjQuery ); } jQuery 对象的方法都定义在jQuery.prototype 上,然后init也是原型上的一个方法,为了让jQuery.fn.init构造函数能够继承jQuery.prototype上的方法把jQ…
分支判断与循环 分支结构 单一选择结构(if) 二路选择结构(if/else) 内联三元运算符 ?: 多路选择结构(switch) var condition = true; if (condition) { alert("我将出现!"); } condition = false; if (condition) { alert("我不会出现!"); } else { alert("我会出现!"); } condition ="some…
经常在工作中要求网页做这样的处理判断:针对无线端的网页,我们需要兼容一种异于PC端的网页效果. 如下代码就可以实现无线端的判断: var mobs = ['android', 'ipad', 'ipod', 'phone', 'mobile', 'mobi'], isMob; for (var i = 0; i < mobs.length; i++ ) { if (navigator.userAgent.toLowerCase().indexOf(mobs[i]) > -1 ) { isMob…
判断是否为素数? 质数(prime number)又称素数,有无限个.质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数的数称为质数. 合数,数学用语,英文名为Composite number,指自然数中除了能被1和本身整除外,还能被其他数(0除外)整除的数.与之相对的是质数(因数只有1和它本身,如2,3,5,7,11,13等等,也称素数),而1既不属于质数也不属于合数.最小的合数是4. <!DOCTYPE html> <html lang="en">…
javascript中,值非null的对象在if()中都会被判断为true: if([]) {// true} if({}) {// true} if(null) {// false} if("") {// false} if(0) {// false}…
javacript至今共有7中类型 Six data types that are primitives: Boolean Null Undefined Number String Symbol (new in ECMAScript 6) Object 关于typeof的详情解释 demo1: Function.prototype.toString() 与 Object.prototype.toString()的区别: var f = function(){}; f.prototype.hasO…
(迁移自旧博客2017 09 25) typeof 我们常使用typeof来判断数据类型,在常规场景中足以应付数据类型判断的需要: var obj = { name: 'zhangxiang' }; function foo() { console.log('this is a function'); } var arr = [1,2,3]; console.log(typeof 1); // number console.log(typeof '1'); //string console.lo…
数据类型的判断有这么几种方式 1.一元运算符 typeOf 2.关系运算符 instanceof 3.constructor 属性 4.prototype属性 一.typeof typeof的返回值有以下几种 类型 结构 Undefined "undefined" Null "object" (见下方) 布尔值 "boolean" 数值 "number" 字符串 "string" Symbol (ECMAS…
在传统的Javascript里,当我们对某个页面元素进行某种操作前,最好先判断这个元素是否存在.原因是对一个不存在的元素进行操作是不允许的.例如: document.getElementById("someID").innerText("hi"); 如果ID为"someID"的元素不存在,我们将得到Javascript运行错误:document.getElementById("someID") is null 正确的写法应该是…
如何用脚本判断用户输入的的字符串是下面的时间格式2004-11-21 必须要保证用户的输入是此格式,并且是时间,比如说月份不大于12等等,另外我需要用户输入两个,并且后一个要比前一个晚,只允许用JAVASCRIPT,请详细帮助作答, 提示:可用正则表达式提前判断一下格式,然后提取各时间字段内容 完成方法: 首先要在Eclipse中配置apache的tomcat服务器,能够测试网页内容 再Eclipse中创建 dynamic web project项目 项目中创建一个html文件index.htm…
一.javaScript五种空值和假值 分别为undefined,null,false,"",0,这五个值的共同点是在执行if语句时都会执行false分支,执行对应的非语句的时候都执行true分支. 1.undefined:表明变量没有初始化,即“未定义”: 2.null:js关键字,用于描述“空值”,表示数字.字符串.对象是“无值”的,typeof为object,但不具备对象实例的属性与方法: 3.false."".0:在if语句中表现为假值,但是他们都是有意义的…
在 ECMAScript 规范中,共定义了 7 种数据类型,分为基本类型和引用类型两大类. 其中: 基本类型:String.Number.Boolean.Symbol.Undefined.Null     引用类型:Object 基本类型也称为简单类型,由于其占据空间固定,是简单的数据段,为了便于提升变量查询速度,将其存储在栈(stack)中,即按值访问. 引用类型也称为复杂类型,由于其值的大小会改变,所以不能将其存放在栈中,否则会降低变量查询速度,因此,其值存储在堆(heap)中,而存储在变量…
摘要: 1.数组检测的方法: 1) typeof . 2) instanceof . 3) constructor . 4) Object.prototype.toString. 5) Array.isArray(). 以上为数组检测的方法,但是这些方法中: Array.isArray()方法是最为简单方便的方法,但是存在版本支持性问题,没有版本支持性问题且较好的检测方法是使用Object.prototype.toString结合call()方法来检查,通常数组检测中我们常用的做法是两种方法结合…
今天遇到一个需求,在A页面上判断B页面是否加载完毕(B页面是第三方页面),加载完毕时隐藏loading动画... 而平时我们一般做的事是在B页面上判断B页面是否加载完毕,进行操作. if(document.readyState == 'Loaded'){ // 我们的操作 //页面加载readyState的五种状态 原文如下: //0: (Uninitialized) the send( ) method has not yet been invoked. //0 - (未初始化)还没有调用se…
用正则表达式判断.如果纯数字是指整数的话(不包含小数点),可以这样: function check(){ var value = document.getElementById("inputId").value; var reg=/^[1-9]\d*$|^0$/; // 注意:故意限制了 0321 这种格式,如不需要,直接reg=/^\d+$/; if(reg.test(value)==true){ alert("都是数字!通过"); return true; }e…
一.变量克隆 在js中经常会遇到将一个变量赋值给一个新的变量这种情况,这对于基本类型很容易去实现,直接通过等号赋值就可以了,对于引用类型就不能这样了.(注:像函数,正则也可以直接通过等号赋值) 这里我写了一个复制值的函数,可以进行深度复制,也能进行浅复制,要进行深度复制只需要将第二个参数设置为true即可 function clone(data,deep){ var cloneData = undefined; var data = arguments[0],deep = arguments[1…
在JS中,If 除了能够判断bool的真假外,还能够判断一个变量是否有值. 下面的例子说明了JS中If的判断逻辑: 变量值 true '1' 1 '0' 'null' 2 '2'  false 0 null   0.0 输出序列号 0 1 2 3 4 5 6 7 8 9 10 11 代码 输出结果 var test = function () { var data = [true, "1", 1, '0', 'null', 2, '2', false, 0, null, , 0.0]…
写JS时不可避免要用到 if 与 逻辑运算符( ||, &&). 如果你经常阅读Js的第三方组件源码, 会发现有一种写法作为初始化变量的方法经常出现. var variable = variable || {}; 我第一次看到这样的代码时觉得很不可思议,在多数主流语言下(如Java,C#,C/C++)上面得到的结果值毫无疑问会是一个布尔值,且始终为true. 在看看另一句我们自己写时也常使用的 if( variable ){ somethingToDo(); } 虽然用得顺手,可是你真的知…
作为开发员,很多时候拿到数据之后都是要做数据判断,比较特别的情况就是我们需要做数组判断和对象判断,经常的我们就array === array ,object === object;但是可惜是我们得到的结果是false,可是明明属性名和值都是一样的,为什么就返回false.那是因为这两个压根就是不是同一个数组或者同一个对象,怎么理解呢,就是两个人有着同样的外貌,同样的性格等等,但是他们不是同一个人.其实我们之所以要匹配数组对象是否全等,我们也仅仅是想看他们里面的内容是否是一样,那么我就只需要判断他…
前言: 根据身份证号判断精确周岁年龄,可以精确到天,即周岁以生日当天为准,生日当天周岁+1,少一天则不加. 实现方法: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <script> /** * 根据身份证号,获取精缺周岁年龄 * @param {Object…
不管写什么程序,平时都会用到条件语句,如:if...else... switch这样的语句,来达到对条件的判断.下面看来一段代码: function abc(test){ if (test == 1){ console.log('test的值是'+test); } else if (test == 2){ console.log('test的值是'+test); } else if (test == 3){ console.log('test的值是'+test); } else if (test…
在很多网站注册的时候,需要我们填写电话号码,本来想糊弄一下,但是还不行,一直提示不正确,我去网上搜了很多,正则表达式,发现有很多不对的, 最后写了一个简单的,但是比较实用的 首先是html部分的内容 手机号:<input type="text" class="loginuser" placeholder="请输入您的手机号" id="uid" onblur="checkPhone()" /> &…
% 而不能被无限次decodeURIComponent 可以用%来进行判断…
第一种:IF 条件语句 第二种:三元运算 第三种:&& .|| 组成的条件语句 第一种: IF 基础,相信绝大多数人都会: 第二种:  c=a>b ? true:false  // 如果a>b 为真 则返回真,否则返回假,并且把结果返回给c: $a = 1; $b = 2; $c = $a > $b ? true:'233'; //$c = 233 $c = $a < $b ? true:'233'; //$c = 1; $a = 3; $b = 2; $c = $…
<script> alert(window.navigator.userAgent); if(window.navigator.userAgent.indexOf("Windows NT")>-1){ alert("window系统"); }else if (window.navigator.userAgent.indexOf("Mac")>-1){ alert("Mac系统"); }else{ ale…
1.onkeypress&onkeydown区别 onkeypress 事件在用户按下并放开任何字母数字键时发生.但是系统按钮(例如:箭头键.功能键)无法得到识别. onkeydown 事件在用户按下任何键盘键(包括系统按钮)时发生.捕获的 keyCode 不区分字母大小,而 onkeypress 区分. IE6的onkeypress会接受"回车事件",而onkeydown不会接受 IE8的onkeypress不会接受"回车事件",而onkeydown会接受…