JS初学笔记

动态类型的语言给我最大的感觉就是混乱,虽然有很多酷炫的语法糖,但感觉实际用起来会有很多bug。

直接就按照ES6的特性来吧,反正没什么不好

1.变量统统为var,函数也是变量。

2.不区分整数浮点数。

3.判断相等用===

4.初始化数组 var arr=[1,2,3]; var arr=  new Array()数组可以装任何变量

5.对象初始化 var person={

                                        name  :   "sb",age : 20,tags["dalao",5],  eat   :   function(){alert("饿");}

                                        }

注意这里属性和值用   :分隔,每个属性用,分隔

6.控制台输出 console.log()

7.一个变量不加var声明,自动变为全局。

解决方法:'use strict';



8.字符串不可变!可用单引号或双引号。多行字符串,用反引号

9.字符串拼接,用+或者使用模板字符串    `你好,我叫${name}`

10.获取字符串长度 length ,转大写 toUpperCase()  ,转小写toLowerCase(),字串 substring(),索引 indexOf()



11.数组索引其实也是字符串。其实是个arraylist!长度可变!

获取索引indexOf()       切片slice()       末尾加元素push()    删去末尾元素pop()

头部加元素shift()    头部删除元素unshift()    sort()排序    reverse()反转

spice(index,num,var1,var2.....)将从index开始的num个元素替换为var1,var2........

concat()数组拼接,返回新数组    

 join()用指定字符串连接数组各元素,返回新字符串



12。对象

用  .或者[]访问属性    []内为字符串形式

新增属性直接  obj.pro=  ;

删除属性  delte obj.pro;

判断有没有该属性    "pro"    in    obj    

判断都有属性    obj.hasOwnProperty()


13.循环   

新增  for (var x  of  obj)循环,类似于for (   :    )

还有一种forEach的神奇方法,不过用了回调,,没懂

14.map 可以使用二维数组初始化,set使用一维数组初始化。(map和set中的key可以不为字符串)

   基本方法 get()   set()   has()   delete()


16。函数 也是变量!!!两种方式初始化

function f(x)   = {};

var f = function(x){};

auguments变量,自带,指向所有形参

rest,接收剩余形参,书写方法function(a,b,...rest)和Java类似

17.全局作用域,不在函数体内定义的变量自动绑定到唯一指定全局变量window下,成为其一属性。

18.命名空间,为避免冲突,把全局变量绑定到自定义的全局对象中。

19.块级作用域。var声明的变量整个函数内可用,若想指定块内 的变量,使用let进行声明

20.常量用  const声明

21.解构赋值    用[x,y,z]=[1,2,3]的形式进行批量赋值,可以使用默认值。

     对属性赋值    {pro1,pro2,pro3} = obj;

    若使用变量名与属性名不一致  使用   pro:var进行赋值。

      *若发生报错,把该解构赋值语句用小括号包围起来


感觉后面的坑好多。。玩不动了

直接跳浏览器操作吧还是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值