美文网首页
JS基础技巧

JS基础技巧

作者: Iswine | 来源:发表于2017-02-13 23:12 被阅读0次

最近刷题发现自己的JS基础并不是很牢固,所以把一些心得,技巧,易错点记录下来,方便复习。
1.创造出一个与原数组无关系,但值又完全一样的数组:
<blockquote>
数组是引用类型,通过newArr = arr造出来的数组与原数组完全一样,所以不行。
通过for循环固然可以创建一个新的数组,但更好的方式是用newArr = arr.slice(0)
同时,如果想在新数组上增删,用pop(),push(),shift(),unshift()自然不会错,更合适的是将复制数组与增删合并,活用arr.concat(),arr.slice()
</blockquote>

2.数组,字符串的删除方法
<blockquote>
arr.slice(start,end)
①不改变原数组;②返回值为新数组;③支持负号(即从后往前);④切下来的包括start不包括end。
arr.splice(index,removeCount,[appendItem1],...)
①改变原数组;②返回值为删掉的元素组成的数组;③不支持负号;


字符串实际上是先将str转化成new String(str),之后调用了方法,因此都不会改变原值。
str.slice(start,end)
和arr基本一样;
str.substr(start,removeCount)
和slice的区别在于第二个参数为删除的个数;
str.substring(start,end)
不支持负数,会将负数归零,并会自动将0前置。
</blockquote>

3.类数组=》数组:
在JS中有很多类数组,例如函数的arguments,DOM的node.children(),getElementsByXXX等等,所得的结果均是类数组,将其转换为数组才能使用数组的方法。
var arr = [].slice.call(类数组)

4.Object.hasOwnPropery / for(key in obj)
Object.hasOwnProperty(str):用于检查Object自身是否拥有以str为名的属性或方法;
for(let key in obj):尽可能枚举所有obj中的属性、方法名,包括原型链上的。
这两者的区别在于

  • 用法:一个是返回的boolean,用于检测是否存在;另一个用于枚举,循环返回字符串;
  • 作用范围:一个专注于自身对象,另一个拓展至对象所继承的原型链;

所以常常组合使用两者:

function Observer(data){
    this.data = data;
    this.get= function(){
   }
}
Obj.prototype.set = function(){
}

for(let key in obj){
    if(obj.hasOwnPropety(key)){
         
    }
}

相关文章

  • JS基础技巧

    最近刷题发现自己的JS基础并不是很牢固,所以把一些心得,技巧,易错点记录下来,方便复习。1.创造出一个与原数组无关...

  • 前端JS基础面试技巧

    第一章 课程简介 拿到一个面试题,你第一时间看到的是什么? 考点 又如何看待网上搜出来的永远看不完的题海? 以不变...

  • React-Native 随笔

    学习基础: js的基础知识, rect.js基础 JSX语法基础 FlexBox布局 安装 安装node.js下载...

  • 最新web前端相关课程学习链接

    js基础篇 js进阶篇 js高级篇 vue基础篇 vue高级篇 react基础 react高级 Nodejs基础 ...

  • JS开发必须知道的41个技巧

    JS是前端的核心,但有些使用技巧你还不一定知道;本文梳理了JS的41个技巧,帮助大家提高JS的使用技巧 目录Arr...

  • JS开发必须知道的41个技巧

    JS开发必须知道的41个技巧 前言 JS是前端的核心,但有些使用技巧你还不一定知道;本文梳理了JS的41个技巧,帮...

  • 【基础系列】JS使用技巧专题

    JS使用技巧专题 1开发技巧 1.1函数使用 1.1.1函数声明方式 JS函数的写法总结 http://blog....

  • JS逆向之基础定位技巧

    篇幅有限 完整内容及源码关注公众号:ReverseCode,发送 冲 当我们拿到一个网站时,首先就是抓包定位加密...

  • web前端 -- Day23 js高级

    js基础 JavaScript简称:JS JS分三个部分: ECMAScript标准---基础的语法 DOM D...

  • 前端JavaScript面试技巧

    1-1 课程概述 要做什么?——讲解前端 JS 基础面试题 哪些部分?——JS 基础,JS-WEB-API,JS ...

网友评论

      本文标题:JS基础技巧

      本文链接:https://www.haomeiwen.com/subject/nxjtwttx.html