
you dont know js
前端好欺负
万丈高楼平地起
展开
-
[ydnkjs] ~ 非运算符
原创 2021-07-15 16:48:56 · 127 阅读 · 0 评论 -
[ydnkjs] js 中的 + - 号
js中的加减号 如果在变量前面时是有 强制类型转换的能力????????然而 只有 - 号有反转的能力 其实这也是常识 所以第一行成立时符合逻辑的 再来看一个只有1 后面那个➕ 实现的是 ➕ 的功能 其余的都是对末尾的1进行修饰然而 正号 没有反转的能力 (那这个正号还有什么意义呢)上面的运算也就等于 1 ➕ (➖ ➖ 1)也就等于 2是不是➕在变量之前就没有任何意义,(唉 ,那➕只剩强制类型转换的能力了)上图片中第一行中的➕ 和第二行的➕ 可不是一个东西第二行中的加号 由于这个??原创 2021-07-15 16:00:32 · 469 阅读 · 0 评论 -
js面试1 对象: {a:{b:{c:{d:1}}}} 字符串:‘a.b.c.d‘ 根据字符串查找对象中的位置
我giao 这道题我发现一个妖术 var obj = {a:{b:{c:{d:1}}}} var str = 'a.b.c' function getObjValue(object,str){ let yaoguai = `object.${str}` return eval(yaoguai) } console.log(getObjValue(obj,str)) //真是妖术啊只是知道原创 2021-07-06 23:04:49 · 1111 阅读 · 3 评论 -
不被信任的Array 的 length,还是合理的表现?
为什么说数组的length 不被信任赫然 写到writable = true,然而他的亲兄弟(可能也不妥)String 可没受到这种不公平的待遇,在不可配置的前提下,这种简直是深入骨髓的歧视那么 为什么Array 从定义之初就不被信任 究竟是道德的沦丧,还是创作者人性的扭曲,带着疑问,我????一探究竟!emmm等我会了再写...原创 2021-06-26 17:45:03 · 107 阅读 · 0 评论 -
【ydkjs】wss立即执行表达式(func...)()与闭包的关系
这就是我所理解的立即执行表达式 function foof(e){ console.log(e) console.log('神秘顶级函数执行') return e } foof(function foo(){ var a=3 console.log(a) console.log(this) })()原创 2021-06-07 15:01:57 · 105 阅读 · 0 评论 -
【ydkjs】wss 菜鸟重写for循环
for(i=0;i<10;i++){ console.log(this) console.log(i) }想要实现上面那个效果,首先简单实现了下面这种 function myfor(index){ console.log('myfor执行',index) return index } myfor(function forcom(a,b...原创 2021-06-06 20:21:10 · 109 阅读 · 0 评论 -
[ydkjs] wss立即执行表达式(func.....)()和(func....())个人理解的区别
你不知道的js中在函数作用域,立即执行表达式这一节他是这么描述这两个展示立即执行表达式的展现方法的相较于传统的 IIFE 形式,很多人都更喜欢另一个改进的形式:(function(){ … }())。仔细观察其中的区别。第一种形式中函数表达式被包含在 ( ) 中,然后在后面用另一个 () 括号来调用。第二种形式中用来调用的 () 括号被移进了用来包装的 ( ) 括号中。这两种形式在功能上是一致的。选择哪个全凭个人喜好。这两种形式在功能上是一致的,这句话说的真的是有水平,至少证明这是一本严谨的书原创 2021-06-06 12:24:03 · 121 阅读 · 0 评论 -
[ydkjs] wss个人理解立即执行表达式(function......)() 不加;的错误
读这本书的时候遇到了这样的一个情况 var a=2 (function foo(){ //此行出现错误 Uncaught TypeError: // 2 is not a function var a=3 console.log(a) })() console.log(a)那么问题就来了 为什么报错,立即执行表达式报错,这个时候我就发现,我根本就不了解 立即执行表达式原创 2021-06-05 20:46:21 · 99 阅读 · 0 评论 -
【ynkjs】函数作用域
var a = 2 function foo(){ var a = 3 console.log(a) } foo()//3 console.log(a)//2 var a = 2 function foo(){ a = 3 console.log(a) } foo()//3 c..原创 2021-06-05 17:26:52 · 109 阅读 · 0 评论 -
【you dont know js】 欺骗词法作用域的两个恶魔 eval(..)和with()
不要使用 eval和with原创 2021-06-04 19:45:43 · 101 阅读 · 0 评论