视频来源:麦子学院【看来是麦子的忠实粉丝】 讲师:King
我只是想记住对应的中文翻译:Uncaught SyntaxError: missing ) after argument list//属性列表后缺失)
- var声明变量,如果声明了变量却没有赋值,默认值为undefined
- 科学计数法:7.8x10^7,简写为“7.8E7”的形式, 3e-3 = 3*10^-3(大小e都成),当值过大或过小时,默认为 Infinity无穷大或-infinity无穷小
- NaN Not a Number,可通过isNaN()判断,比如a=0/0就是一个NaN;记住NaN是唯一不能和自身比较的词
- n回车换行 | r换行 | t制表符
- 数据类型强制转换
Boolean() - 转换为布尔值(0、-0、NaN、空字符串、undefined、null通过Boolean()函数转换为布尔false)
String() - 转换为字符串
Number() - 转换为数值型
parseInt() - 转换为整型
parseFloat - 转换为浮点型 - 连接符+
var a=1,b=2,c=3; alert(a+b+c);输出6,此时的+为运算符加号 alert(''+a+b+c);前面加了个空字符串,输出123,此时的+为连接符,表达式结果type为strin
- 关于取余符号%
3%8 = 3 3%-8 = 3 -3%8 = -3 (相当于-(3%8)) -3%-8 = -3 总结:后面的负号不起作用,前面的负号相当于-(3%8)
- 整型、浮点型、布尔型、Null的数据都支持自增自减,NaN、字符串不支持自增自减
- 逻辑运算符&& - 短路现象 - 如果第一个值为false,则后面的表达式不会继续执行(逻辑或 ||同样有短路现象)
var i=0,j=1; if(i-- && j++){ document.write('hello'); }else{ document.write('world'); } document.write('i='+i); document.write('j='+j); 结果输出:world i=-1 j=1;(在if语句中,i=0把j++短路了,即j++并没有执行)
- 逗号运算符,比如声明多个变量时:var a=1,b=2,c=3;要注意 var a=(b=2,c=3);此时a会等于最后一个变量的值,即a=c=3
void运算符表明表达式没有返回结果,比如:var a=void(b=2,c=3);此时a为undefined - var a=null;alert(typeof a); 输出结果为object,即null是个对象
- 按位运算符 https://www.cnblogs.com/happy1992/p/7064114.html
- 函数实现默认参数
//方法一
function f1(x,y){ x=x||1;//判断x是否有值,没有则赋值为1; y=y||2; alert(x+y); }
//方法二 function f2(x,y){ if(x===undefined) x=1; if(y===undefined) y=2; alert(x+y); }
//方法三 function f3(x,y){ // return arguments;//返回一个auguments对象 x=arguments[0]?arguments[0]:1; y=arguments[1]?arguments[1]:2; alert(x+y); } - 可变参数
function f(){ var paramsNum=arguments.length;//得到传入参数的个数 alert(paramsNum); }
- 局部变量:在函数体内声明,仅在函数体内作用
var a=1,b=2,c=3;
alert(a+b+c);输出6,此时的+为运算符加号
alert(''+a+b+c);输出123,此时的+为连接符