初学菜鸟的总结

console.log()效果是输出,实际表示打印

 

注释//注释一行

        /*balabala*/注释一段

同一行加分号以分割多条语句

 

简单数据类型:undefined,(空变量)(不可做变量名)

null,(空对象)(不可做变量名)

boolean,

number,

srting

复杂数据类型:对象object{a:s,a:s,a:s}

数组[a,a,a]

括号优先级由内向外

 

var a=3.1415926;
  a = a.toFixed(2);//保留2位但结果为一个String类型,不能进行计算
  a = parseFloat(a);//将结果转换会float
  //用一步的话如下
  a = parseFloat(a.toFixed(2));

 

对象转换成数组后输出

var info={a:1,b:2}
info.a='1'
info.b='2'
var new = JSON.stringify(info)
console.log(new)

 

 

对象的属性名可以是标识符,字符串,数值

属性值可以是任意的数据值,对象,函数

 

name = stu['name']

可以用于动态取值,[  ]内可以加变量(数组名[i])或者字符串

可以通过变量传递我要访问的属性名

【var stu = {name:1,age:2}(键值比)

。。。

。。。

var sch = {name:1,age:2}

function get_value(data,value){

return data[value]

}

get_value(sch,name)】

动态的传递对象中的属性键值(在合理定义变量名字时便于取值)

【若传递的属性值为函数,则输出内容不执行函数】

 

condition ? expre1 : [align=center][/align]expre2;  

true ->1

false->2

 

【prompt:弹出窗口】

 

+=i    等于(自身加i)

-=

*=

/=

%=

 

for 循环

循环内的变量可以不加定义,但是循环内的变量不加定义则作用域变为全局,会被上下文修改

if 判断

 

&&与

||或

!非

 

 

数组       数组名[]

数组赋值push

var arr=[];

arr.push('字符串',team);把字符串和team代表的值加入数组中

若push数组A中的某元素进入数组B之后,不会改变数组A

 

空字符串   字符串名字=''

*.length 只能用于表示数组长度

【var a=Object.keys(对象名)   打印时输出对象的所有属性名

  a.length   打印时输出对象长度】

 

函数返回值,调用函数内的运行结果,同时结束函数、循环 return表示结束;

不加返回值时,函数内的console.log在调用函数后正常执行;

返回多个值时需要把多个值组合成数组【或者对象?】

 

函数名(参数列表){代码块}

 

父级作用域不能访问子级作用域内的变量;子级作用域可以访问父级作用域的变量

 

但js中for(){} ;if(){}后的{}不看做块级作用域 

在判断区域【如if后面的小括号里】内,判断something是否存在,可以在定义前进行分流如

var inputs = ['ITEM000001','ITEM000001','ITEM000001','ITEM000001','ITEM000001',]
var info = {}
inputs.forEach(function(value){
    if(info[value]){
        info[value]++
    }else{
        info[value] = 1
    }
})

 

 

所谓可以访问即是读取或修改

 

子作用域覆盖(子作用域有变量与父作用域变量重名时,子作用域里只能访问子作用域的变量)

 

var x = 0;
function fun(){
    console.log(x);
    var x = 1;
    x++;
return x
}
fun();

 

先执行输出但父级变量已被覆盖,只不过被盖住还不知道是什么,因此输出为undefined,之后揭晓x的值与运算,代码执行的先后顺序(由上而下,由左至右)

 

A in B(对象名)

in 操作符用以确认 A 是否是 B 内的属性名

JavaScript 使用下列规则将非布尔值转换为布尔值:

1.所有对象都被视为 true。

2.当且仅当字符串为空时才被视为 false。

3.null 和未定义被认为是 false。

4.当且仅当数字为 0 时才为 false。

猜你喜欢

转载自sodler.iteye.com/blog/2344174