javascript is weird 我的意思是,对于刚开始使用这种语言和他语言(例如 C++ 或 C#)的开发人员来说,javascript 可能会很奇怪。 某些语言可能会让你大吃一惊??...在这篇文章中可以得到更多信息(https://2ality.com/2018/02/numeric-separators.html)。 一些奇怪的类型。...另一个例子是当你运行代码 typeof null 时: typeof null; // result object 这会使你错误地认为 null 是对象(但并不是,它是原始值)。...在这种情况下,这不仅是一件奇怪的事情,而且是语言中的一个无法纠正的错误,因为它会破坏代码的其他部分。...语言的奇怪的知识,请分享。?
ascii' codec can't encode characters in position 20-23: ordinal not in range(128) 在python main.py &无错误信息时...,使用 nohup python main.py & 时却出现 错误 'ascii' codec can't encode characters in position 20-23: ordinal...not in range(128) 其实是因为在将log信息输出到nohup.out文件的时候,会出现编码错误,所以没有使用nohup时不会有问题(因为没有涉及写文件) 在头部加上 # -*- coding...: utf-8 -*- 其实还是不够的,还需要在头部加入 import sys reload(sys) sys.setdefaultencoding('utf-8') 这样就可以正常运行了
解决一个问题可以有很多方法,但是有些方法很复杂,甚至有些是荒谬的。在本文中,我想谈谈解决一个问题时的好方案和坏方案。 ---- #1 让我们先从怎样删除数组中的重复项这个简单问题开始。...复杂 - 使用 forEach 删除重复项 首先,我们新创建一个空数组,用 forEach() 在数组的每个元素上执行一次提供的函数。最后检查新数组中是否存在该值,如果不存在,则添加它。...每次检查数组中是否存在应该出现的序号,如果不存在,就对计数器加一。...- 用 reverse 和 join 检查 我认为这个解决方案简单到不需要解释,因为代码本身说明了一切。...当有更简单的方法时,为什么要搞得那么复杂?希望你能从这篇文章中学到一些很有意思的思路。祝你有一个美好的编码时间,尽量不要让生活中简单的事情复杂化。
不修改代码前好好的,刚加了些代码运行就不可以了,然后注释重新编译还是不行。 你可能不小心改到其他东西了,建议使用ctrl + z恢复或回滚版本。...---- 程序以前还可以运行的,代码也没修改,今天就运行不了,非常诡异。 程序可能有耦合与程序相关的操作,比如网络连接,数据库,串口等设备。建议打断点调试看看卡在哪里运行不了。...---- 明明只有1个编译错误,尝试修改编译错误却导致几百个错误出来了,有些崩溃。 几百个错误通常是第一个错误引起,尝试修改第一个错误,其他错误有很大概率也修正了。...---- debug版本可以运行,release版本不可以运行,这也太奇怪了吧。 大多是程序导致,可以尝试进行一下操作: 1. 尝试健壮代码,比如避免悬空指针,变量初始化,枚举给初始值等。...找适合的依赖库,比如windows下debug版本第三方库可能与release版本的第三方依赖库不一样。 3. 使用打印或调试找出不能运行的地方。
API 2:DOM的分层结构 在DOM中,文档的层次结构被表示为树形结构。...树是倒立的,树根在上 树叶在下面,树的节点表示文档的内容 子节点: 在树形结构中,直接位于一个节点之下的节点被称为该节点的子节点 父节点: 直接位于一个节点之上的节点被称为该节点的父节点...文本节点:向用户展示的内容,如...中的JavaScript、DOM、CSS等文本。 3.3....那么在网页中,我们通过id先找到标签,然后进行操作。...为网页内的某个元素指定一个css样式来更改该元素的外观 案例代码如下 1 2 3 <meta http-equiv="Content-Type" content="text
in JavaScript 这是关于JavaScript中异常处理的故事。...这篇文章中我们来看下JavaScript中的出错处理。文章会覆盖异常处理使用的正反例,然后看下ajax的异步处理。...理论上,有人会说错误是Javascript中的简单事件。如果你觉得是这样,那你就要好好去看看了。另外这篇文章只关注浏览器端的JavaScript的情况。...是的,JavaScript中的错误也不过是一个事件。解释器在当前的执行上下文中执行后释放。...包括任何类型的任何错误。而且它能定位到代码中的错误处理。就像其它任何事件一样,你能捕获特定错误的具体信息。这样能使异常处理器只专注于一件事情,如果你允许这样做的话。
in JavaScript 这是关于JavaScript中异常处理的故事。...这篇文章中我们来看下JavaScript中的出错处理。文章会覆盖异常处理使用的正反例,然后看下ajax的异步处理。 ...理论上,有人会说错误是Javascript中的简单事件。如果你觉得是这样,那你就要好好去看看了。另外这篇文章只关注浏览器端的JavaScript的情况。 ...是的,JavaScript中的错误也不过是一个事件。解释器在当前的执行上下文中执行后释放。...包括任何类型的任何错误。而且它能定位到代码中的错误处理。就像其它任何事件一样,你能捕获特定错误的具体信息。这样能使异常处理器只专注于一件事情,如果你允许这样做的话。
第十一课 String对象介绍 1:属性 在javascript中可以用单引号,或者双引号括起来的一个字符当作 一个字符对象的实例,所以可以在某个字符串后再加上.去调用String ...,如果没有找到指定 的字符串,则返回-1; substring:必选参数,要在string对象中查找的子字符串 startIndex:可选参数,从指定的位置开始查找... navigator 对窗口或者框架的navigator对象只读引用,通过navigator对象可以获得与浏览器相关的信息 简单案例如下(输出内容document.write...简单的说就是直接在网页中输出内容。...取消周期性的执行代码 举例如下: 打开新窗口(window.open) open() 方法可以查找一个已经存在或者新建的浏览器窗口。
代码解析或运行时发生错误,JavaScript引擎就会自动产生、并抛出一个Error对象的实例,然后整个程序就中断在发生错误的地方,不再往下执行。...JavaScript的原生错误类型 Error对象是最一般的错误类型,在它的基础上,JavaScript还定义了其他6种错误,也就是说,存在Error的6个派生对象。...try catch finally语句与捕获错误 ECMA-262第3版引入了try-catch语句,作为javascript中处理异常的一种标准方式,用于捕获和处理错误。...try语句块中,而把那些用于错误处理的代码放在catch块中。...如果try块中的任何代码发生了错误,就会立即退出代码执行过程,然后接着执行catch块。
注意,本文所有崩溃的原因都是同一个 EXC_BAD_ACCESS (code=1, address=0x11f645b98) image-20210423232626879 第一个堆栈:字典扩容 image
前戏 首先,总结一下上一篇文章——《前端 JavaScript 之『防抖』的简单代码实现》的内容:「防抖」就是在高频率触发事件停止触发后,延时执行某个处理逻辑。...防抖虽然在一定程度上对性能起到了优化效果,但是,我们也要看到它的局限性:如果高频率事件一直触发,那么回调函数中的逻辑就一直得不到执行。...大家都知道,掘金的编辑器带有草稿箱的效果,即你输入的内容会保存下来,即使我们退出编辑器页面了,再次进入还是可以找回前面输入的内容,这是因为编辑器的 input 事件中执行了发送内容的防抖函数。...节流的含义大家应该都知道了:**每隔固定的时间都会执行一次回函函数中的逻辑**。...新需求 假如,现在有这么一个新需求,要我们在 input 事件中加入新的逻辑:每隔一段时间后,都会执行一次回调函数中的逻辑。 这个需求是不是挺符合节流函数的使用场景的,那我们赶紧来实现一个吧。
常规的表达式求值,我们都会根据计算的优先级来计算。比如*/的优先级就高于+-。...但是小易所生活的世界的表达式规则很简单,从左往右依次计算即可,而且小易所在的世界没有除法,意味着表达式中没有/,只有(+, - 和 )。...现在给出一个表达式,需要你帮忙计算出小易所在的世界这个表达式的值为多少 输入描述: 输入为一行字符串,即一个表达式。其中运算符只有-,+,。参与计算的数字只有0~9....保证表达式都是合法的,排列规则如样例所示。...输出描述: 输出一个数,即表达式的值 输入例子1: 3+5*7 输出例子1: 56 代码 import java.util.*; public class Main { public static
前戏 首先,总结一下上一篇文章——《前端 JavaScript 之『防抖』的简单代码实现》的内容:「防抖」就是在高频率触发事件停止触发后,延时执行某个处理逻辑。...防抖虽然在一定程度上对性能起到了优化效果,但是,我们也要看到它的局限性:如果高频率事件一直触发,那么回调函数中的逻辑就一直得不到执行。...大家都知道,掘金的编辑器带有草稿箱的效果,即你输入的内容会保存下来,即使我们退出编辑器页面了,再次进入还是可以找回前面输入的内容,这是因为编辑器的 input 事件中执行了发送内容的防抖函数。...节流的含义大家应该都知道了:每隔固定的时间都会执行一次回函函数中的逻辑。...~ ~ 代码比较粗糙,也比较基础,后面会逐步向着复杂的方向迭代,望各位看官海涵 ~ ~ ~ 本文完 学习有趣的知识,结识有趣的朋友,塑造有趣的灵魂! 大家好!
小师妹:F师兄你看,以ShortBuffer为例,它的子类怎么后面都带一些奇奇怪怪的字符: ?...我们知道在java中底层的最小存储单元是Byte,一个Byte是8bits,用16进制表示就是Ox00-OxFF。...java中除了byte,boolean是占一个字节以外,好像其他的类型都会占用多个字节。...还记得我们是怎么使用JOL来分析JVM的信息的吗?代码非常非常简单: log.info("{}", VM.current().details()); 输出结果: ?...aligned对齐的意思,表示JVM中的对象都是以8字节对齐的,如果对象本身占用的空间不足8字节或者不是8字节的倍数,则补齐。 还是用JOL来分析String对象: ?
面向对象的语言必须具备四个基本特征: 1.封装能力(即允许将基本数据类型的变量或函数放到一个类里,形成类的成员或方法) 2.聚合能力(即允许类里面再包含类,这样可以应付足够复杂的设计) 3.支持继承...(父类可以派生出子类,子类拥有父母的属性或方法) 4.支持多态(允许同样的方法名,根据方法签名[即函数的参数]不同,有各自独立的处理方法) 这四个基本属性,javascript都可以支持,所以javascript...确实是一种弱类型的面向对象的语言,这里给出一个简单的类继承的代码 javascript"> //父类ClassA function ClassA(sColor)...ClassB,继承自ClassA function ClassB(sColor,sName){ ClassA.call(this,sColor);//利用call函数,将ClassA的所有方法都赋给...oClassB.sayName();//这是ClassB中的新方法 /* call函数的演示示例 function sayColor(sPrefix, sSuffix) { alert(sPrefix
这些变量是随系统运行而变化的,灵活使这些变量可简化我们的操作和更好地控制bash shell的行为。...$# 是传给脚本的参数个数 $0 是脚本本身的名字 $1 是传递给该shell脚本的第一个参数 $2 是传递给该shell脚本的第二个参数 $@ 是传给脚本的所有参数的列表 $* 是以一个单字符串显示所有向脚本传递的参数...是显示最后命令的退出状态,0表示没有错误,其他表示有错误
在js引擎在解释代码之前会进行编译,编译的时候,就会找到所有的变量声明,把所有的变量的声明(不赋值)提升到各自作用域的顶端。...上述代码一共有两个执行环境,以下是“Javascript高级程序设计”中对于作用域的解释 当代码在一个环境中执行时,会创建变量对象的一个作用域链( scope chain)。...作用域链的用途,是保证对执行环境有权访问的所有变量和函数的有序访问。作用域链的前端,始终都是当前执行的代码所在环境的变量对象。...活动对象在最开始时只包含一个变量,即 arguments对象(这个对象在全局环境中是不存在的)。作用域链中的下一个变量对象来自包含(外部)环境,而再下一个变量对象则来自下一个包含环境。...搜索过程始终从作用域链的前端开始,然后逐级地向后回溯,直至找到标识符为止(如果找不到标识符,通常会导致错误发生) 因为函数有自己的执行环境,js的变量提升,把变量提升了这个函数的最顶端。
https://blog.csdn.net/FE_dev/article/details/78870583 说明 上次我们说了一些,关于 JavaScript中事件委托的 基础知识,这次我们继续来看...解释 先来一段代码 的,我们来改改代码。...jQuery中的事件委托 jQuery中事件委托主要是靠on( ) 方法,我们先来看看 on( ) 方法的使用说明 on( ) 方法主要有以下两种形式的用法 用法一 jQueryObject.on...JQuery中on( )方法的解释,推荐看这里 jQuery.on() 函数详解 总结 用到 事件委托 的地方,应该还是比较多的,希望大家都能理解这个东西。
this是JavaScript中的一个关键字,它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用。...func = function { console.log(this.name) } func() //贝吉塔 注意:在严格模式下,全局对象将无法使用默认绑定,即执行会报undefined的错误...func.call() //贝吉塔 func.apply(obj) //卡卡罗特 func.call(obj) //卡卡罗特 优先级 new绑定>显式绑定>隐式绑定>默认绑定 箭头函数(ES6语法) ES6中的箭头函数...'贝吉塔'; var obj = { name: '卡卡罗特', foo: foo }; obj.foo(); //贝吉塔 foo.call(obj); //贝吉塔 ,箭头函数中显示绑定不会生效...本人水平十分有限,内容若有错误,欢迎指正!
https://blog.csdn.net/FE_dev/article/details/78821578 说明 这篇文章说JavaScript中的事件委托,这次先说一些比较基本的知识。...事件:JavaScript 侦测到的行为就是事件,比如鼠标点击、某个键盘的键被按下、元素获得焦点。 委托:就是把原来自己做的事,交给别人做。...= document.getElementById("ul"); ul.appendChild(li3); },1000) 上面这段代码中...总结 这篇文章是比较基础的,还有一些东西没有说,比如文中说 事件委托的实现 的时候,举的例子比较简单,监听的 li 里面没有子元素,如果存在子元素时,那点击子元素 事件就不会触发,那怎么办呢?...还有 JQuery中的事件委托 又是怎么做的呢? 看这里 简单说 JavaScript中的事件委托(下)