JS基础
bikeshedding
一个像素的执着
展开
-
js中常见的错误类型
ReferenceError引用错误 console.log(a); // a is not defined 引用一个没有定义的属性会出现此错误 TypeError 类型错误 / let num = 123 // num() // 只有函数类型才能使用小括号/ 一个值 对他调用了不属于他的语法 会出现此错误 SyntaxError 语法错误 // let a - 2 RangeError数值不在其所允许的范围 递归中会出现此错误 ...原创 2021-01-24 17:28:10 · 178 阅读 · 0 评论 -
JS合并数组 对象
合并数组使用concat 合并对象使用Object.assign // 合并两个数组 --- 如果参数为空 返回副本 不是引用 let arr1 = ['red', 'green', 'blue'] let arr2 = [1, 2, 3] let allArr = arr1.concat(arr2) allArr // ["red", "green", "blue", 1, 2, 3] // 合并两个对象 --- 浅拷贝 let obj1 =原创 2021-01-07 13:04:11 · 316 阅读 · 0 评论 -
检查属性在Object中的存在性
in 操作符会向上查找原型链 * hasOwnProperty 只会检查当前对象不查找__proto__ let o = { name: 'fj', age: 18 } /** * in 操作符会向上查找原型链 * hasOwnProperty 只会检查当前对象不查找__proto__ */ console.log('age' in o); // ture console.log('value原创 2021-01-06 15:10:25 · 121 阅读 · 0 评论 -
&& || 的运算规则
//&& 是找假 fn && fn() //如果第一个数转换后的值为false,则直接返第一个数, 不管第二个数是真还是假;否则执行并返回第二个数 // || 是找真 fn || fn() // 如果fn 是true 如果第一个是真则直接返回第一个数 ...原创 2020-11-17 16:17:29 · 688 阅读 · 0 评论 -
for in 循环的用法 js
遍历对象时k为属性值** var obj = { name: 'fj', age: 18, hobby: 'code' }; for (var k in obj) { console.log(k + ',' + obj[k]); } 输出结果: ----------------------------------------------------------------------------------原创 2020-06-18 20:24:12 · 944 阅读 · 0 评论 -
js中apply和call的区别
apply : 阅读js高级程设笔记 使用apply改变this指向,并调用 有两个参数 第一个参数是this指向谁,第二参数是一个数组用于传递参数 第二参数可以是argument function showSum(num1, num2) { console.log(this, num1 + num2); } let arr = [3, 4] showSum.apply(new Date(), arr) //第二行打印结果 Sun Nov 08原创 2020-11-17 16:08:35 · 127 阅读 · 0 评论