如梦初醒的博客
JavaScript与二进制数据的恩怨情仇 JavaScript与二进制数据的恩怨情仇
编程江湖,终日血雨腥风,论及二进制数据,又有多少豪杰谈笑风生,风生水起,水起船高,高深莫测…… 不扯远了,想必谈到二进制数据,大家联想到的就会是 1010110110001 或者 00000000 11111111 00000101 这样的
2025-03-16
JavaScript 面向对象编程 JavaScript 面向对象编程
概述面向对象编程思想,顾名思义,即模仿现实世界的存在物,一切节对象,拥有各自的特性与行为,如人类,外貌、肤色、身高、体重等是其特征,能吃饭睡觉行走是其行为; 同样,编程中,一个对象拥有 **属性(key/property)**,相当于人类的
2025-03-16
JavaScript 闭包详解 JavaScript 闭包详解
变量作用域首先来了解一下Javascript中变量的作用域,除了常见的普通变量外,对象和函数也是一种变量。变量分为局部变量和全局变量。 局部变量局部变量就是指在函数内部定义的变量,作用域是函数内部网,此变量通常只能在函数内部访问,和外界是区
2025-03-16
JavaScript 逻辑运算符 “&&” 和 “||” 短路原则的应用 JavaScript 逻辑运算符 “&&” 和 “||” 短路原则的应用
逻辑运算符在Javascript中,有逻辑运算符 与 &&, 或 ||, 非 !,常在条件句或循环中进行逻辑判断。 例如: var a = 1, b = 1, c = 2; if (a = b && (b =
2025-03-16
JavaScript 计时器函数用法 JavaScript 计时器函数用法
Javascript中和大多数语言一样,存在计时函数,使某语句或函数不用立即执行,可以延时设定的时间值之后再执行。 setTimeout()这个函数表示括号中的代码,延时指定时间后再执行,格式为 setTimeout("funct
2025-03-16
JavaScript 经典设计模式 JavaScript 经典设计模式
设计模式(Design Pattern)是一套被反复使用的代码设计经验总结,一个模式可以是一套可复用的方案,或者一个解决某一类问题的模板;使用固定的模式(解决方式)解决软件开发中的某些问题,利于代码的可理解性与可靠性,比如,比起设计一套标新
2025-03-16
JavaScript 类型转换的有趣应用 JavaScript 类型转换的有趣应用
背景 可以访问这个网站提前预览:https://knightyun.github.io/magic-expression/ 先来看一串代码: (!(~+[])+{})[--[~+''][+[]]*[~+[]]+~~!+
2025-03-16
JavaScript 深度迭代遍历未知对象 JavaScript 深度迭代遍历未知对象
面向对象编程的语言,都存在对对象的一些操作,其中就包括遍历未知对象的属性值。 通常情况常见的遍历对象的方法: var o = { name: 'cloud', age: 20 } for (i in o)
2025-03-16
JavaScript 稀疏数组 JavaScript 稀疏数组
稀疏数组概念在一些后端语言中,如 C,数组内的值通常被分配在一系列连续的内存地址上,但是在 js 中,某些数组内存则不是连续的,所谓稀疏,顾名思义,不连续,存在一些空隙; 例如: var arr = new Array(3); consol
2025-03-16
JavaScript 求最小公倍数 JavaScript 求最小公倍数
最小公倍数(Least Common Multiple)最小公倍数是中学数学知识中的一个概念,具体定义可以 自行了解,这里只大致解释一下,通常几个正整数会存在许多个倍数,每个倍数除以这几个正整数后都没有余数,而这些倍数之中最小的一个则称为最
2025-03-16
JavaScript 之常见算法排序 JavaScript 之常见算法排序
冒泡排序冒泡排序即数组从头到尾,依次比较相邻两数的大小,不符合顺序则交换位置,一直循环直到排序完成。如果是升序排序,那么每一轮的一系列比较和交换之后,最大那个数一定会被排到最后(不信可以动手验证一下),可以理解为冒泡到最后,这样每一轮的最大
2025-03-16
JavaScript 之 call,bind,apply 方法及 this 的用法辨析 JavaScript 之 call,bind,apply 方法及 this 的用法辨析
概述JavaScript函数中的三个方法.call(), .apply(), .bind(),总体来说主要功能就是改变函数中 this 关键字的指向,因为 this 默认指向当前环境的对象; 例如: var obj = {
2025-03-16
2 / 3