有时候我们在js中会直接判断变量是否存在值,下面列举一些情况: var a = 0; var b = 1; var c = ' '; var d; console.log( a ? 1 : null); //null console.log( b ? 1 : console.log( c ? 1 : null); //null console.log( d ? 1 : null); //null 上述情况中我们c,d没有值,所以结果是null,但是a的值是0,结果也是null,这里就涉及到一个特
var m ={a:'A'}; if(typeof m == 'object' && JSON.stringify(m).indexOf('{') == 0){//判断变量m是不是json对象 console.log('m is json');} JSON.stringify():这个函数可以将json对象和数组转换为字符串类型. eval():这个方法可以将json字符串和数组字符串转换为json对象和数组对象 eval('('+json_arr_str+'
一.变量克隆 在js中经常会遇到将一个变量赋值给一个新的变量这种情况,这对于基本类型很容易去实现,直接通过等号赋值就可以了,对于引用类型就不能这样了.(注:像函数,正则也可以直接通过等号赋值) 这里我写了一个复制值的函数,可以进行深度复制,也能进行浅复制,要进行深度复制只需要将第二个参数设置为true即可 function clone(data,deep){ var cloneData = undefined; var data = arguments[0],deep = arguments[1
javascript重修之书(一):如何判断变量的数据类型 一:检测值类型 基本类型:(Undefined.Null.Boolean.Number和String) javascript之所以被称为一门弱类型的语言,是因为其为变量赋值时会自动判断类型并进行转换.那么我们在编写函数的时候,如何判断一个变量究竟是什么类型的呢?这个时候我们就可以用到typeof操作符.我们先分析以下这段代码输出的值: var a ="123"; var b = 123; var c = true; var d