<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Mr_ZJQ的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Mr_ZJQ</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Mr_ZJQ]]></copyright><item><title><![CDATA[颠覆认知的『JavaScript』篇——18 错误信息、try_catch、严格模式、垃圾回收机制]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122536311</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122536311</guid><author>Mr_ZJQ</author><pubDate>Thu, 17 Feb 2022 13:55:47 +0800</pubDate><description><![CDATA[一、错误类型

1. SyntaxError 语法错误


// 变量名不规范
var 1 = 1;
var 1ab = 1;
// 关键字赋值
new = 5;
function = 1;
// 基本的语法错误
var a = 5:
function 1test() {}

2.ReferenceError引用错误



//变量或者函数未被声明
test();
console.log(a);
 
//给无法被赋值的对象赋值的时候
var a = 1 = 2;
 
var a = 1;
console..]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——17 自定义原型方法、去重、封装typeof]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122523896</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122523896</guid><author>Mr_ZJQ</author><pubDate>Thu, 17 Feb 2022 13:55:25 +0800</pubDate><description><![CDATA[一、去重

原理：建立一个新的对象，根据键名不重复的性质，添加到对象中，然后再push到一个新的数组中去

1. 数组去重


var arrs=[1, 1, 2, 2, 3, 4, 6, 3, 6,'a','a'];
Array.prototype.unique=function(){
	var obj={}
	var arr=[];
	for(var i=0;i&lt;this.length;i++){
		if(obj[this[i]]===undefined){
			obj[this[i]]=th]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——16 数组方法、类数组]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122489275</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122489275</guid><author>Mr_ZJQ</author><pubDate>Thu, 17 Feb 2022 13:55:11 +0800</pubDate><description><![CDATA[一、数组方法

1. concat

两数组的拼接，不会改变原数组


var arr1=['a', 'b', 'c'];
console.log(arr1);//(3) ["a", "b", "c"]
var arr2=['d', 'e', 'f'];
console.log(arr2);//(3) ["d", "e", "f"]
var arr3=arr1.concat(arr2);//(6) ["a", "b", "c", "d", "e", "f"]
console.log(arr3);

2. t]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』——15 数组基础、数组方法、数组排序]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122447494</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122447494</guid><author>Mr_ZJQ</author><pubDate>Thu, 17 Feb 2022 13:54:52 +0800</pubDate><description><![CDATA[一、数组基础

1.数组的声明


var arr1 = []; // 数组字面量
// 通过系统内置的Array构造函数声明数组
var arr2 = new Array(); // 不推荐
var arr3 = Array(); // 不使用

//---------------------------------------------

var arr1 = new Array(1, 3, 5, 7);
var arr2 = new Array(5); // 当传入一个参数且是整数时，创建一个长度为]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』——14 三目运算、对象克隆、浅拷贝、深拷贝]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122430662</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122430662</guid><author>Mr_ZJQ</author><pubDate>Thu, 17 Feb 2022 13:54:33 +0800</pubDate><description><![CDATA[一、三目运算

结构：条件 ？表达式A ：表达式B，条件为真A执行，为假则表达式B执行

三目运算一般可以作为简单if语句的简化，三目运算也可以嵌套使用


var a = 5;
if (a &gt; 0) {
  console.log('大于0');
} else {
  console.log('小于等于0');
}

a &gt; 0 ? console.log('大于0')    //注意这里是一整个表达式不要用分号
      : console.log('小于等于0'); 

//------]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——11 原型与原型链深入、对象继承]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122144559</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122144559</guid><author>Mr_ZJQ</author><pubDate>Thu, 17 Feb 2022 13:54:13 +0800</pubDate><description><![CDATA[一、原型的深入

prototype：构造函数的原型

__proto__：实例化对象的一个属性，指向构造函数的原型

所有对象都有原型，包括原型本身


function Car() {}
var car = new Car();
console.log(Car.prototype);
console.log(car);



二、原型链

1.

实例化对象通过__proto__属性向上查找属性和方法的链条就叫做原型链。

原型链的顶端是Object.prototype，它有一个内置的to Stri..]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——10 原型、原型链、闭包立即执行函数、插件开发]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122129812</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122129812</guid><author>Mr_ZJQ</author><pubDate>Thu, 17 Feb 2022 13:53:57 +0800</pubDate><description><![CDATA[一、原型

1. prototype

原型prototype是函数的一个属性，打印出来出来其实也是对象

这个prototype是定义构造函数构造出来的每个对象的公共祖先

通过该构造函数构造出来的实例对象都可以继承原型上的属性和方法。


function Handphone(color, brand, system) {
  this.color = color;
  this.brand = brand;
  this.system = system;
}

Handphone.prototype ]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——09 构造函数及实例化原理、包装类]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122108878</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122108878</guid><author>Mr_ZJQ</author><pubDate>Thu, 17 Feb 2022 13:53:33 +0800</pubDate><description><![CDATA[一、构造函数以及实例化原理


/**
 * GO = {
 *  Car: function () {...}
 *  car1: {
 *  color: 'red',
 *  brand: 'Benz'
 * }
 * }
 * AO = {
 *   this: {}
 * }
 */
function Car(color, brand) {
  /**
   * this = {
   *  color: color,
   *  brand: brand
   * }
   * 
   * re]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——08 对象、构造函数、实例化]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122087124</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122087124</guid><author>Mr_ZJQ</author><pubDate>Thu, 17 Feb 2022 13:53:02 +0800</pubDate><description><![CDATA[一、对象

1. 对象的创建以及属性的基础操作


// 字面量
var teacher = {
  name: '张三',
  age: 32,
  sex: 'male',
  height: 176,
  weight: 130,
  teach: function () {
    console.log('I am teaching JavaScript');
  },
  smoke: function () {
    console.log('I am smoking');
  },
  e]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——07 立即执行函数、闭包深入、逗号运算符]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122060523</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122060523</guid><author>Mr_ZJQ</author><pubDate>Thu, 17 Feb 2022 13:52:20 +0800</pubDate><description><![CDATA[一、立刻执行函数

1. IIFE - immediately-invoked function expression

自动执行,执行完成以后立即释放

立即执行函数常用于初始化函数


var a = (function test(){
            console.log(1)

        })();
        console.log(a);
    //打印 1  undefind
    //说明 立刻执行函数就是立即执行，然后执行完就销毁
    

2. 写法


//.]]></description><category></category></item><item><title><![CDATA[JS基础续言-大学问『DOM』篇—— 01 DOM初探、JS对象、XML、幻灯片案例展示]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122686118</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122686118</guid><author>Mr_ZJQ</author><pubDate>Tue, 25 Jan 2022 15:44:47 +0800</pubDate><description><![CDATA[一、DOM初探

DOM Document Object Model 文档对象模型

DOM 是对象也是宿主(浏览器)对象

二、JS对象

1.本地对象：Native Object

Object、Function、Array、String（包装类）、Number（包装类）、Boolean（包装类）

Error、EvalError、SyntaxError、RangeError
ReferenceError、TypeError、RangeErrorDate、RegExp


2. 内置对象：Built-.]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——05 参数默认值、递归、预编译、暗示全局变量]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122014530</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122014530</guid><author>Mr_ZJQ</author><pubDate>Fri, 21 Jan 2022 17:01:29 +0800</pubDate><description><![CDATA[一、默认参数值

1.形参默认值

1. 一般情况下，没有实参，形参默认值为undefind

2. 可以在定义函数的时候设置默认值，不过是ES6的写法


function test(a = 1, b) {
  console.log(a); // 1
  console.log(b); // undefined
}

test();

//第二种
function test(a = 1, b) {
  console.log(a); // 2
  console.log(b); // 1
}

test]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——04 函数基础与种类、形实参及映射、变量类型]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122010310</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/122010310</guid><author>Mr_ZJQ</author><pubDate>Fri, 21 Jan 2022 16:59:17 +0800</pubDate><description><![CDATA[一、函数的基础与种类

1. 函数的作用

功能的封装、解耦合

2. 函数名命名规则

不能以数字开头
	字母_$开头
	可以包含数字
	小驼峰命名法
3.
]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——03 循环、引用值初识、显示及隐式类型转换]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/121954622</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/121954622</guid><author>Mr_ZJQ</author><pubDate>Fri, 21 Jan 2022 16:28:48 +0800</pubDate><description><![CDATA[一、循环

1. 基础语法


/**
 * 1、声明变量 i = 0
 * 2、if (i &lt; 10) {
 *    console.log(i);
 * }
 * 3、i++
 * 2、if (i &lt; 10) {} 不满足条件，则停止循环
 * ...
 */
for (var i = 0; i &lt; 10; i++) {
  console.log(i);
}

var i = 0;
for (; i &lt; 10;) {
  console.log(i);
  i++;
}

2]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——02 语法、规范、错误、运算符、判断分支、注释]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/121938944</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/121938944</guid><author>Mr_ZJQ</author><pubDate>Thu, 16 Dec 2021 18:06:45 +0800</pubDate><description><![CDATA[一、规范

js是以分号区分语句的，不写也可以，但是要规范，加了就习惯加上，不加就全都不加，有些可以不用加（if switch for function）


//符号两边加空格
 var a = a + b 

二、错误

1. 语法错误

所有语句都不会执行

2. 通用错误

1.错误语句之前的语句会执行，之后的不会执行

2. 不同脚本块之间相互独立错误不会相互影响

三、运算符

1. 运算优先级



2. + 运算符

任何数据类型+字符串=字符串


var a = 1 + "s...]]></description><category></category></item><item><title><![CDATA[颠覆认知的『JavaScript』篇——01【发展史、ECMA、编程语言、变量、JS值】]]></title><link>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/121926767</link><guid>https://blog.youkuaiyun.com/Mr_ZJQ/article/details/121926767</guid><author>Mr_ZJQ</author><pubDate>Tue, 14 Dec 2021 17:25:26 +0800</pubDate><description><![CDATA[一、发展史

1. 主流浏览器以及内核

IE         trident

chrome     webkit blink

Firefox     gecko

opera      presto

safari       webkit

2. 浏览器的历史

1. 1990 年浏览器的诞生，蒂姆伯纳斯李 超文本分享资讯的人，将world wide web 移植到C libwww/nexus。意义是允许别人浏览他人编写的网站

...]]></description><category></category></item></channel></rss>