json是javascript中的一种数据格式,类似于数组,但又不同于数组,区别在于下标: 例如,var obj=[a:15,b:10,c:3,d:8]: //这是json的写法 var arr=[15,10,3,8]; //这是数组的写法 可以看出,json中每个元素是以字符串作为下标:a,b,c,d,而数组则是以数字作为下标,0,1,2,3 数组循环的方法两种: 1)普通的for 循环 2)for in : var i=0: for(i in arr){....} 对于数组来说,for循
浅谈JS中的!=.== .!==.===的用法和区别 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转换为数字,检查其是否相等. nu
手写new 看一下正常使用new function Dog(name){ this.name = name } Dog.prototype.sayName = function(){ console.log(this.name) } var dog = new Dog('小狗') dog.sayName() 结果为小狗 自己手写的new function Dog(name){ this.name = name } Dog.prototype.sayName = function(){ conso
js中var用与不用的区别 Javascript声明变量的时候,虽然用var关键字声明和不用关键字声明,很多时候运行并没有问题,但是这两种方式还是有区别的.可以正常运行的代码并不代表是合适的代码. var num = 1: 是在当前域中声明变量. 如果在方法中声明,则为局部变量(local variable):如果是在全局域中声明,则为全局变量. 而 num = 1: 事实上是对属性赋值操作.首先,它会尝试在当前作用域链(如在方法中声明,则当前作用域链代表全局作用域和方法局部作用域etc...)
最近在学习angularJs的时候由于里面涉及到了箭头函数,箭头函数除了声明上有点区别以外,和普通函数最主要的区别还是在this的问题上. Js中函数中嵌套的函数this不会 “继承”.比如说以下代码: var o = { name:'xwt', age:13 } function outer(){ console.log(this);//输出{name:'xwt,age:13} !function inner(){ console.log(this);//输出window }(); } out
一.前言 Uncaught TypeError: ... is not a function function max(){}表示函数声明,可以放在代码的任何位置,也可以在任何地方成功调用: var max = function(){};表示函数表达式,即将一个匿名函数赋值给一个变量,实现通过变量来调用这个匿名函数,但它需要在声明过后才能进行调用,如果调用在声明之前就会报如上红色字体的错误.而这在函数声明中不会出现这样的错误. 二.正文 (一).代码示例 //函数表达式 myFunc();//