js基础知识
js基础笔记
面壁思过程
这个作者很懒,什么都没留下…
展开
-
移动端触摸(touch)事件
Touch 事件首先 touch 包含三类事件,它们分别是:touchstart、touchmove、touchend 。望文生义这种本能相信你应该会有,但在这里我还是有必需对这三个词进行一翻不必要的解释。touchstart:手指触摸到一个 DOM 元素时触发。touchmove:手指在一个 DOM 元素上滑动时触发。touchend:手指从一个 DOM 元素上移开时触...原创 2019-12-04 14:19:07 · 492 阅读 · 0 评论 -
测试数组循环的一些方法是否可以跳出循环
想要数据大于3的时候断出循环let arr = [1, 2, 3, 4, 5];不能跳出循环的方法 // 1.forEach():代替普通的for循环 执行结果全部可以打印 { arr.forEach(function (val, index, arr) { if (val > 3) { ...原创 2019-10-16 17:47:35 · 706 阅读 · 0 评论 -
js转义符号的基本用法
一、第一个例子如果你定义的字符串里想要有双引号等一些字符 使用转义符号可以<script> // 转义符号 反斜杠\ var str = "afdkfjldkf;" var str1 = "afdk\"fjldkf;" //如果想在字符串里面使用双引号 var str2 = "abcdef\\sdkjfls" // 结果如下 ...原创 2019-08-02 09:47:58 · 1718 阅读 · 0 评论 -
JS-----Math.random()随机数的相关用法
先说一下Math的一些方法Math 对象方法Math.ceil(); //向上取整。Math.floor(); //向下取整。Math.round(); //四舍五入。Math.random(); //0.0 ~ 1.0 之间的一个伪随机数。【包含0不包含1】 //比如0.8647578968666494以下一些实例Math.ceil(Math.random() ...原创 2019-07-29 10:58:00 · 901 阅读 · 0 评论 -
js数组去重
let arr1 = [1, 2, 3, 4, 1] //方法1:Array.filter() + indexOf var a = arr1.filter((item, index) => { return arr1.indexOf(item) === index }) console.log(a); //方法2:利用inc...原创 2019-07-26 18:09:40 · 129 阅读 · 0 评论 -
两组数组对象数据比对
1.方法一两组数据比对 如果第二组数据里的某项的值得已经在第一组数据里存在 就把第一组里的该属性的项变成第二组里的值var arr1 = [{ id: 1, istrue: false, }, { id: 2, istrue: false, ...原创 2019-07-26 17:35:05 · 2697 阅读 · 0 评论 -
javascript如何封装自己的js插件
//用闭包形式来写,前面加;是防止跟其他js压缩时报错;(function(global){ //开启严格模式 "use strict"; //构造函数定义一个类 传参数 function Scroll(el,options) { //some code }; //原型链上提供方法 Scroll.p...原创 2019-07-16 13:16:11 · 941 阅读 · 0 评论 -
合并日期提取共同年月的日期进行json数据的合并
注意点前提是后台返回的数据已经根据时间戳做好排序才会生效或者前端先排序好原始数据转化之后的数据function hebin(data) { var arr = []; data.forEach(function(item, i) { var tmpDate = new Date(item.createTime); var month = ...原创 2019-03-05 16:08:28 · 1050 阅读 · 0 评论 -
3、js浅谈this指向问题详解
this指向问题的几条规则1.函数预编译过程this--------------------window2.全局作用域里this-------------window3.call/apply 可以改变函数运行时this指向4.obj.func(); func()里面的this指向obj -----------------调用this指向谁、5.new构造的函数 this代表的...原创 2019-02-27 08:49:08 · 290 阅读 · 0 评论 -
js的arguments属性以及相关用法
属性arguments.callee指向当前执行的函数。arguments.caller 指向调用当前函数的函数。arguments.length指向传递给当前函数的参数数量。arguments[@@iterator]返回一个新的Array迭代器对象,该对象包含参数中每个索引的值。注意:现在在严格模式下,arguments对象已与过往不同。arguments[@...原创 2019-02-26 11:34:43 · 239 阅读 · 0 评论 -
js-----对象枚举实现方法的连续调用
<script> var deng = { smoke: function () { console.log(1); return this; }, drink: function () { console.log(2); re...原创 2019-02-22 09:17:30 · 360 阅读 · 0 评论 -
js闭包问题以及解决办法
个人理解闭包的产生主要就是:一切最外部的函数比里面的函数先执行,必然产生闭包,闭包会导致原有的作用域链不释放,造成内存泄漏 例子1解析:实现上现在的demo保存的是function b() a执行之后就销魂了自身的AO,但是此时b已经保存了a的AO <script> function a() { var num = 100; ...原创 2019-02-21 14:38:28 · 4410 阅读 · 0 评论 -
数组的循环方法以及性能
示例如下<script> var arr = ["张三", "李四", "王五", "赵六"]; // 1、普通for for (let i = 0; i < arr.length; i++) { console.log(i, ":", arr[i]); } // 2、使用forEach遍历 ar原创 2019-02-21 14:09:12 · 513 阅读 · 0 评论 -
js对象遍历
<script> // 遍历对象 var obj = { '0': 'a', '1': 'b', '2': 'c', __proto__: { lastname: '唐' //在对象原型上加属性 } }; console.log(obj) ...原创 2019-02-21 11:48:30 · 176 阅读 · 0 评论 -
call, apply,bind改变this指向方法
call, apply,bind都可以改变this指向区别:call只能一个参数一个参数的传入。apply则只支持传入一个数组至于bind方法,他是直接改变这个函数的this指向并且返回一个新的函数,之后再次调用这个函数的时候this都是指向bind绑定的第一个参数。bind传餐方式跟call方法一致。列子:<script> //比方说张三的中饭有红...原创 2019-02-18 17:26:44 · 482 阅读 · 0 评论 -
js数据隐式类型转换
1.说数据隐式转换前先说一下typeof typeof()返回数据的类型有以下几种1.undefined----如果这个值未初始化或未声明;2.string---如果这个值是字符串;3.Boolean----如果这个值是布尔值;4.number----如果这个值是数值5.object----如果这个值是对象或null;6.function----如果这个值是函数。 ...原创 2019-02-12 18:04:26 · 378 阅读 · 0 评论 -
js函数预编译的理解
先说一下函数执行过程js执行分三步:1、语法分析,2、预编译,3、解释执行。函数的预编译发生在函数执行前一刻,预编译时函数声明整体提升,变量声明提升。预编译主要有四个步骤一:预编译发生在函数执行的前一刻1.创建 A0对象(执行期上下文)2.找形参和变量声明,将变量声明和形参名作为AO属性名,值为undedined3.将实参值和形参统一4.在函数体里面...原创 2019-02-12 18:02:15 · 192 阅读 · 0 评论 -
1、js里数组常用方法汇总
数组的常用方法基本用法1.数组有length和下标例子: //1.数组有长度和下标 var cars = ["Saab", "Volvo", "BMW","AODI"]; console.log(cars.length); console.log(cars[1]); //2.数组for in循环(i是下标) for(va...原创 2018-07-14 14:56:25 · 182 阅读 · 0 评论 -
数组排序,对象排序
一、数组排序(从大到小)1.function bubbleSort(arr){ for(var i=0;i<arr.length-1;i++){ for(var j=0;j<arr.length-i-1;j++){ if(arr[j]>arr[j+1]){ var temp=...原创 2018-07-14 11:10:44 · 1169 阅读 · 0 评论 -
原生js操作dom
一、什么是DOM对象 DOM对象是文档对象模型,是基于浏览器编程一套API接口,通过它,我们可以访问HTML文档对象属性、方法、事件,还可以对其进行操作。二、DOM节点树 在HTML中所有的事物都有节点,DOM将HTML文档视作节点树,通过DOM,节点树中的是所有节点都可以通过JavaScript进行访问,所有的HTML元素都可以被修改、创建、删除。查找:查找html元素用法id查找documen...原创 2018-05-30 13:39:08 · 282 阅读 · 0 评论 -
js数组去重的三种方法(根据不同的需求进行不同操作)
数组去重var count=[1,2,4,5,4,2,4,4,5]; function select (arr){ var arr2=[]; for( var i = 0; i < arr.length; i++){ if (arr2.indexOf(arr[i]) == -1) { arr2.push(arr[i]) } } ...原创 2018-05-24 11:41:03 · 505 阅读 · 0 评论 -
2、js中字符串常用方法
js常用方法:1. length2.str[index]3.valueOf(),toString()返回string的原型值4.charAt(index)返回子字符5.charCodeAt(index)返回子字符串的ASCII编码6.concat(str), + 连接字符串7.indexOf()返回子字符的下标8.slice()...原创 2018-05-21 11:43:36 · 711 阅读 · 0 评论