js基础的东西有很多还是不容忽视的,记录保存下来就可以时刻查看了(更深刻的理解)。
- js脚本特点:基于对象、多范式、动态性。
- 数字转字符串性能排列:
- 性能如下:3>2>1>4
- 方式:num.toString()/String(num)/num+''/new String(num)
- 字符串转数字性能排列:
- 性能如下:3>2>1>4
- Number(str)/parseInt(str) parseFloat(str)/str-0 +str -str str*1 +new Date/new Number(str)
- 经常不知道==和===怎样判断才好?
- ==在比较的时候先做类型转换再比较;===直接比较,比较类型和值是否都相等。
- ==如果有一边是数字或者有布尔值,会把两边先转换为数字再比较。
- ==如果有对象类型的话,会先把对象转化为基本数据类型再去比较(valueof()),如果对象转化为基本数据类型失败,会使用toString()方法去转换。
- 内置对象:Date /Array /Math(单体对象)/String/RegExp/Error
- Array常用方法
- push
- pop
- unshift
- shift
- slice
- reverse
- join
- sort(比较时是根据unicode码比较的,先比较各自最高位,再依次比较下一位)。sort(function(){})方法中可以传递回调函数,回调函数中可以传两个参数代表数组中相邻的两个元素,在返回值中可以设置一元表达式,判断后可以选择返回一个正数或者负数,正数代表交换位置。(默认正序)规则:返回值大于0交换位置,小于0不交换,等于0保持相对位置。
- indexOf(indexOf不能传递正则表达式,search和match可以传递。)
- forEach
- map(可以在原数组进行操作并返回新的数组)。
- String常用方法
- slice(start,end)(可以传负值)
- substr(start,length)(每个参数必须为正值)
- substring(start,end)
- replace(匹配的子串,替换的字符串)
- split('子串')
- indexOf
- charAt(index)
- search
- match(也可以传正则表达式,此方法尽量不要使用全局匹配,使用的话会把分组覆盖掉)
- toLowerCase()
- toUpperCase()
- concat
- Error常用方法
- throw()手动抛异常
throw new Eooro('参数异常'); try{//maybe error}catch(e){//handle error}
- nodeType: 1 element;2 attribute node;3 text node; 8 注释 ;9 document;11 文档片段 documentFragment(透明盒子)
- nodeName:DIV P 获取到的都是大写。
- insertBefore(new node,old node)/replaceChild(new node,old node)/removeChild(node)
- instanceof使用:返回布尔类型值;console.log(per instanceof Person);(Person是构造函数) 构造函数的返回值为值类型,会被忽略return语句;相反返回值为引用类型,就会将该引用类型数据返回。
好了,先说到这里,下一篇博客开始说面向对象面向对象初识篇,基础也是不可或缺的呀!