大师网-带你快速走向大师之路 解决你在学习过程中的疑惑,带你快速进入大师之门。节省时间,提升效率

undefined(程序语句)

undefined,一个特殊值,通常用于指示变量尚未赋值。在高级程序设计语言设计应用程序时,用于指示变量尚未用单等号进行赋值(常量未定义)。

vue使用watch监听拿到props的传值

vue使用watch监听拿到props的传值 export default { data() { return { floorData0: {}, floorData1: {}, floorData2: {}, } }, props:['floorData'], watch:{ floorData:val = { console.log(this.floorData);在floorData传值成功的前提下,有时候会出现直接在 watch 里面通过 this.floorData 是无法拿到的,总是显示 undefined。然后需要通过 newVal和oldVal这么处理,才能拿到 floorData 的值: watch:{ floorData:(newVal,oldVal) = { console.log(newVal);

为什么JS中eval处理JSON数据要加括号

为什么要加括号? 加上圆括号的目的是迫使eval函数在处理JavaScript代码的时候强制将括号内的表达式(expression)转化为对象,而不是作为语句(statement)来执行。举一个例子,例如对象字面量{},如若不加外层的括号,那么eval会将大括号识别为JavaScript代码块的开始和结束标记,那么{}将会被认为是执行了一句空语句。所以下面两个执行结果是不同的: alert(eval("{}");

Kotlin 全栈开发之 前端 JavaScript: Getting Started with

var trimIndent = Kotlin.kotlin.text.trimIndent_pdl1vz$; return new Date(ntime); } function renderTable() { var e = document.getElementById('title');: 1.《Kotlin 极简教程》(陈光剑)第39页。 Getting Started with Kotlin and JavaScript with Gradle 新书上架:《Spring Boot 开发实战》 — 基于 Kotlin + Gradle + Spring Boot 2.0 的企业级服务端开发实战 京东下单链接 https://item.jd.com/31178320122.html 天猫下单链接 https://detail.tmall.com/item.htm?

TypeScript用法小结(基础部分)

TypeScript用法小结(基础部分) 最开始我是反对TypeScript的,后来用的人越来越多了,身为一个立志要成为一个伟大的全面的programmer,没办法学一学,想要成为一个强大的人,必须要接受很多新鲜的事物. string : 字符串类型; Boolean: 布尔类型; enum:枚举类型; any : 任意类型,一个牛X的类型; void:空类型; Array : 数组类型; //number类型 18 let hjy:string = 'huangjingyang'; any1 = 'jingyang';

前端 浅拷贝和深拷贝

前端 浅拷贝和深拷贝 一、什么是浅拷贝、什么是深拷贝 我们都知道js的数据类型分为基本类型和引用类型,一般讨论到浅拷贝和深拷贝的都是针对引用类型的,像Object和Array这样的复杂类型, 1、浅拷贝:以Object为例 var a = { name: 'Wendy' }; b.name = 'Lily'; } 完善下第三个问题就是 function isObject(x) {return Object.prototype.toString.call(x) === '[object Object]';isObject(source)) target = source;

使用reduce实现map

// 定义回调函数的执行环境 // call第一个参数传入null,则 this指向全局对象,同 map的规则 let CBThis = callbackThis || null; this.reduce((brfore, after, idx, arr) = { // 传入map回调函数拥有的参数 // 把每一项的执行结果push进res中 res.push(fn.call(CBThis, after, idx, arr));

minikube中部署的第一个Kubernete应用

minikube中部署的第一个Kubernete应用 (Proudly powered by QKQ) 上一篇文章安装好了minikube,那么接下来就试试kubernetes的hello world。 Q: 将应用部署到kubernetes需要几个步骤? A: 在kubernetes中部署应用,首先需要将应用做成镜像,然后才能部署在kubernetes中。所以: 创建一个镜像 需要一个镜像仓库用来存放镜像 编写kubernetes的deployment文件,将镜像部署成为pod 编写kubernetes的service文件,创建pod

[结构赋值-01]数组的结构赋值

[结构赋值-01]数组的结构赋值 解构赋值语法是一个Javascript表达式,这使得可以将值从数组或属性从对象提取到不同的变量中 —— MDN 我们有这样一个数组 arr = [1,2,3,4]; //arr4 == [1, 2, 3, "a", "b", "zz", 1] //如果写成 const arr4 = [arr1, arr2, arr3]; //a=1 //b=null //c=undefined //d='aaa' 交换变量 以往的交换需要第三个变量 let a = 20; const [status, data, msg] = getUserInfo(123);

[解构赋值-02] 对象的解构赋值

[解构赋值-02] 对象的解构赋值 对象的结构赋值与数组的结构赋值相似,等号左右两边都为对象结构 const {a,b} = {a:1,b:2}, 左边的{}中为需要赋值的变量,右边为需要解构的对象。 对象结构赋值的用法 const obj = { saber: '阿尔托利亚', archer: '卫宫' }; //但是我们没有办法对第三个skillName用相同的方式 //const { skill: [ skill1, { skillName }, { skillName: } ] } = player; const obj = { name: '小明', age: 22 };

面试官问:能否模拟实现JS的call和apply方法

) thisArg 在fun函数运行时指定的this值。需要注意的是,指定的this值并不一定是该函数执行时真正的this值,如果这个函数处于非严格模式下,则指定为null和undefined的this值会自动指向全局对象(浏览器中就是window对象),同时值为原始值(数字,字符串,布尔值)的this会指向该原始值的自动包装对象。 arg1, arg2, .== new Object(argsArray)){ throw new TypeError('CreateListFromArrayLike called on non-object');

面试官问:JS的this指向

} doSth();) thisArg 在fun函数运行时指定的this值。需要注意的是,指定的this值并不一定是该函数执行时真正的this值,如果这个函数处于非严格模式下,则指定为null和undefined的this值会自动指向全局对象(浏览器中就是window对象),同时值为原始值(数字,字符串,布尔值)的this会指向该原始值的自动包装对象。 arg1, arg2, . // '轩辕Rowboat' // call、apply 调用 Student.doSth.call(person);

深入理解ES6笔记(八)迭代器(Iterator)与生成器(Generator)

var value = ! items[i++] : undefined; // "{ value: undefined, done: true }" 生成器(Generator) 生成器( generator )是能返回一个迭代器的函数。生成器函数由放在 function 关键字之后的一个星号( * )来表示,并能使用新的 yield 关键字。 // 生成器 function *createIterator() { yield 1; } // 生成器能像正规函数那样被调用,但会返回一个迭代器 let iterator = createIterator(); // 2 console.log(iterator.next().

React 现代前端框架

文本插值 {1} // 1 {'xinxin'} // xinxin {true} // {false} // {null} // {undefined} // {NaN} // NaN 有警告 { [1,'ww'] } // 1ww { {'bb': 12} } //报错 属性插值

深入理解js中的yield

深入理解js中的yield yield是什么 yield是ES6的新关键字,使生成器函数执行暂停,yield关键字后面的表达式的值返回给生成器的调用者。它可以被认为是一个基于生成器的版本的return关键字。 yield关键字实际返回一个IteratorResult(迭代器)对象,它有两个属性,value和done,分别代表返回值和是否完成。 yield无法单独工作,需要配合generator(生成器)的其他函数,如next,懒汉式操作,

ES6入门用法&函数与对象的语法糖

objA} 深拷贝 JSON.parse(JSON.stringify(data)) 条件: 没有复杂对象:如日期对象,正则对象,没有函数,没有循环引用,没有所有普通对象之外的对象 没有undefined 递归 动态的key值可以用中括号括起来 var key = 'x' var value = 'y' var obj = {} obj[key] = value var obj = { [key + key] : value }

let和const

let和const 发布自Kindem的博客,欢迎大家转载,但是要注意注明出处。另外,该文章收纳在Kindem的个人的 IT 知识整理仓库,欢迎 Star、Fork、投稿 let let是在ES6加入的新的变量声明方法,let声明变量的方法和var类似: let a = 'hello'; 在相同的函数或块作用域内重新声明同一个变量会引发一个重复定义的SyntaxError if (x) { let foo; // SyntaxError: Identifier 'a' has already been declared const a = 'abc';

dayjs 分享

dayjs 分享 Dayjs 分享内容 框架结构 涉及技术 部分代码解读 总结 概述 Day.js 是一个轻量的处理时间和日期的 JavaScript 库,和 Moment.js 的 API 设计保持完全一样. return { input: { input, external: ['dayjs'], // 外部文件,不进行打包 plugins: [ babel({ exclude: 'node_modules/**' }), uglify() ] }, output: { file: fileName, format: 'umd', // 采用umd规范 name: name || 'dayjs', // 重命名全局命名 globals: { dayjs: 'dayjs' } } };

20180914 redux - createStore源码学习和测试

20180914 redux - createStore源码学习和测试 坐在那里看源码很费劲,还是跟着手敲了一遍,把一些例子贴出来,能解有缘人的一丝疑惑也算是功德圆满。水平有限,但是挡不住我们进步的脚步 (*) 看了一点createStore的源码 1. 调用dispatch的时候,会统一调用一遍subscribe中的listener; currentState = currentReducer(currentState, action); function observeState() { if (observer.next) { observer.next(getState());

【ES5】给JSON对象提供的方法

【ES5】给JSON对象提供的方法 微信订阅号:Rabbit_svip JSON在JS中,是一个关于键值对的对象。 很多人会这样写 var json = { a: 10}; json.a = 10; JSON.parse(string, function(key,vlaue){ console.log(key, vlaue); 输出 微信订阅号:Rabbit_svip 上面代码的意思是,如果value是30,就返回undefined,其他的返回自身value。 所以输出的时候,b就没了。 stringify 还有第三个参数,作用是推进。 var json = {a:20, b:30, c:50};