JavaScript
文章平均质量分 56
Ray997
CSDN与hexo的双重记录...
展开
-
算法:二分查找
现在来玩一个猜数游戏,我心里想一个0-99之间的数,来猜的话,最好的方法就是从0-99的中间数49(50也可以,因为双数的中间数是小数)开始猜,如果比49小,那么就猜24(0-48的中间数);如果比49大,就猜74(50-99的中间数).重复这个过程来缩小猜测的范围,直到猜出正确的数字,二分查找的工作方法类似于此二分查找的条件1.查找的数据集是有序的2.没有重复的数据二分查找的实现与分析实现过程1.将left和right设置为数组的开头和结尾,分别是0和arr.length-12.每次循环.原创 2021-08-02 11:48:18 · 193 阅读 · 0 评论 -
每日两题Day2
今天咱来整哈希表两数之和给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9 输出:[0,1] 解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:输入:nu原创 2021-07-23 16:34:07 · 173 阅读 · 0 评论 -
每日两题 Day1
217.Given an integer array nums, return true if any value appears at least twice in the array, and return false if every element is distinct.Examples:Input: nums = [1,2,3,1]Output: trueExample 2:Input: nums = [1,2,3,4]Output: falseExample 3:Input原创 2021-07-21 18:00:47 · 135 阅读 · 0 评论 -
深拷贝和浅拷贝
深拷贝和浅拷贝浅拷贝浅拷贝只能拷贝最外面一层更深级别的对象只能拷贝地址,更改拷贝的新对象时也会改变被拷贝的对象var obj={ id: 1, name: "andy", msg: { age: 18 }}var o ={};for(var k in obj){ o[k]=obj[k]}console.log(o);// o ={// id: 1,// name: "andy",// msg: {原创 2020-08-26 20:29:04 · 97 阅读 · 0 评论 -
变量和函数的声明提升
变量和函数的声明提升变量声明提升1、变量定义可以使用var定义变量,变量如果没有赋值,那变量的初始值为undefined。2、变量作用域变量作用域指变量起作用的范围。变量分为全局变量和局部变量。全局变量在全局都拥有定义;而局部变量只能在函数内有效。在函数体内,同名的局部变量或者参数的优先级会高于全局变量。也就是说,如果函数内存在和全局变量同名的局部变量或者参数,那么全局变量将会被局部变量覆盖。所有不使用var定义的变量都视为全局变量3、函数作用域和声明提前JavaScript的函数作用是指转载 2020-08-13 20:47:30 · 187 阅读 · 0 评论 -
JS中offset client scroll的区别
偏移 offsetoffsetHeight: 元素在垂直方向上占用的空间大小,以像素计。包括元素的高度、(可见的)水平滚动条的高度、上边框高度和下边框高度。offsetWidth: 元素在水平方向上占用的空间大小,以像素计。包括元素的宽度、(可见的)垂直滚动条的宽度、左边框宽度和右边框宽度。offsetLeft:元素的左外边框至包含元素的左内边框之间的像素距离。offsetTop:元素的上外边框至包含元素的上内边框之间的像素距离。offsetLeft和style.left的区别style.le原创 2020-08-04 10:27:32 · 238 阅读 · 0 评论 -
JS 中this的指向性问题
Js 中 this 的指向性问题一般情况下this的最终指向是调用它的对象1.全局作用域或者普通函数指向全局对象window(定时器中的this指向window)console.log(this);//指向windowfunction(){ console.log(this);}fn();//fn的调用者是window,即window.fn()setTimeout(function(){},1000);//前面也省略了一个window2. 方法调用中谁调用this指向谁原创 2020-07-30 14:36:47 · 251 阅读 · 0 评论 -
JavaScrip中基本数据类型和复杂数据类型作为参数传递时的区别(栈内存和堆内存的理解)
JavaScript中的栈内存和堆内存基本概念JavaScript中的变量分为基本类型和引用类型.基本类型:Undifined,Null,Boolean,Number和String,这些简单数据段在内存中分别占有固定大小的空间,他们的值保存在栈空间,是按值来访问的.引用类型:引用类型时保存在堆内存中的对象,引用类型的值大小不固定,栈内存中存放地址指向堆内存中的对象,是按引用来访问的.结合代码和图来理解var a = 0; //栈内存var a2 = "this is string"; //转载 2020-07-24 14:36:39 · 371 阅读 · 0 评论