标签:class style log http si 使用 代码 it la 变量没有声明而直接赋值得话,默认会作为一个新的全局变量,要尽量避免使用全局变量。 var a=b=10;//其中a是局部变量,b是全局变量 ==和!=操作符会在需要的情况下自动转换数据类型。但===和!==不会,它们会同时比较值和数据类型,这也使得它们要比==和!=快。
[10] === 10 // is false
[10] == 10 // is true
‘10‘ == 10
// is true
‘10‘ === 10 // is false
[] == 0
// is true
[] === 0
// is false
‘‘ == ‘‘ ===
实践中最好还是使用分号,忘了写也没事,大部分情况下JavaScript解释器都会自动添加。对于为何要使用分号,可参考文章JavaScript中关于分号的真相。
function Person(firstName, lastName){
this.firstName = firstName;
this.lastName = lastName;
}
var Saad = new Person("Saad", "Mousliki");
var arr = ["a", "b", "c"];
typeof arr; // 返回 "object"
arr instanceof Array // true
arr.constructor(); //[]
函数在创建之后直接自动执行,通常称之为自调用匿名函数(Self-Invoked Anonymous Function)或直接调用函数表达式(Immediately Invoked Function Expression )。格式如下:
(function(){
// 置于此处的代码将自动执行
})();
(function(a,b){
var result = a+b;
return result;
})(10,20)
内部函数被“()”括起来后变成表达式
var items = [12, 548 , ‘a‘ , 2 , 5478 , ‘foo‘ , 8852, , ‘Doe‘ , 2145 , 119];
var randomItem = items[Math.floor(Math.random() * items.length)];
这个功能在生成测试用的假数据时特别有数,比如介与指定范围内的工资数。
var x = Math.floor(Math.random() * (max - min + 1)) + min;
var numbersArray = [] , max = 100;
for( var i=1; numbersArray.push(i++) < max;); // numbers = [1,2,3 ... 100]
function generateRandomAlphaNum(len) {
var rdmString = "";
for( ; rdmString.length < len; rdmString += Math.random().toString(36).substr(2));
return rdmString.substr(0, len);
}
var numbers = [5, 458 , 120 , -215 , 228 , 400 , 122205, -85411];
numbers = numbers.sort(function(){ return Math.random() - 0.5});
String.prototype.trim = function(){return this.replace(/^\s+|\s+$/g, "");};
var array1 = [12 , "foo" , {name "Joe"} , -2458];
var array2 = ["Doe" , 555 , 100];
Array.prototype.push.apply(array1, array2);
var argArray = Array.prototype.slice.call(arguments);
function isNumber(n){
return !isNaN(parseFloat(n)) && isFinite(n);
}
function isArray(obj){
return Object.prototype.toString.call(obj) === ‘[object Array]‘ ;
}
但如果toString()方法被重写过得话,就行不通了。也可以使用下面的方法:
Array.isArray(obj); // its a new Array method
如果在浏览器中没有使用frame,还可以用instanceof,但如果上下文太复杂,也有可能出错。
var myFrame = document.createElement(‘iframe‘);
document.body.appendChild(myFrame);
var myArray = window.frames[window.frames.length-1].Array;
var arr = new myArray(a,b,10); // [a,b,10]
// myArray 的构造器已经丢失,instanceof 的结果将不正常
// 构造器是不能跨 frame 共享的
arr instanceof Array; // false
JSON
1.首次为变量赋值时务必使用var关键字 变量没有声明而直接赋值得话,默认会作为一个新的全局变量,要尽量避免使用全局变量。 var a=b=10;//其中a是局部变量,b是
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。
相关文章
-
Jsonp 关键字详解及json和jsonp的区别,ajax和jsonp的区别
2016-01-18 17:28
-
正则表达式优化JSON字符串的技巧
2016-01-18 09:06
-
Linux学习笔记:MySQL字符集
2016-01-17 18:24
-
PHP学习之字符串比较和查找
2016-01-17 18:23
网友点评
精彩导读
热门资讯
关注我们
关注微信公众号,了解最新精彩内容