粉丝26获赞129

给大家介绍买标的大版本二十四点二七里面新增的两个模块,分别是参数管理以及快速建模模块。 参数管理模块主要是能让开发者能维护常用的一些参数字段,可以在各个设计器里面进行选举引用,从而形成这个参数字段的一个规范。 快速建模模块目前只开放了数据表的一个建模的功能,那么通过它可以进行一个快速的一个数据库表的一个设计。我们先看一下参数管理的模块,在开发工具常用参数管理, 打开列表页,从画面可以看到,目前这里已经内置维护了 my build 的 一个字段规范, 那么这些字段主要分成以下几类,有一些常用的字段,实体上述和接口的一个入参。 我们在做这个应用开发的一个常见的一个呃数据交互的一个痛点,就是我们前端有一套字段,然后接口有一套字段,然后数据库表也有一套字段, 那么当这个字段这个数据从前端往这个库表的存储进行传递的过程中,经过不同的人手,可能会因为一些命名问题等等的会导致这些啊啊出现一些这个字段的一个命名的一个偏差, 从而增加这个日后的一个维护工作量。那么我们 my builder 的 一个设置这个模块的一个初衷呢,就是通过这个常用维护一些常用的一个参数,把这些规范通过这这种配置的方式把它固化下来, 那么从而就在我们的设计器里面可以啊快速地选举这些常用的字段,从而形成开发者的啊各个项目之间的一些共识或者叫规范, 那么可大家可以在列表也可以看到,目前有大概有十多个这个 my builder 的 一个字段的一个规范在里面。我们再看一下这些参数维护了之后我们是怎么使用的。 首先是这个页面,我们随便打开一个页面啊,那么在数据定义这里,我们可以通过一个新增 这里呢我们可以是从表呃这个数据字典里面选举这个字段。第二个是可以通过这个常用参数,就是我们刚才介绍的这个常用参数,您进行一个选举, 那么通过这样的一个方式就可以快速添,快速构建好我前端界面所用的一个字段变量。 当一些复杂结构的时候,比如说是列表或者对象的时候,它是可以通过添加这个字字段, 这个是前端的模块,那么前端主键主要有呃选择器啊,或者这个窗体,它都是类似的,我们看一下选择器,那么打开一个 啊,那么这里有一个选举啊,同样是可以选举这个参数的, 那么可以快速把它添加进来。我们再看一下后台接口,后台接口是主要的一个业务规则,业务逻辑的处理,打开一个, 那么数据接口这里呢,会有实体的一个字段,我们也是可以通过这个常用参数,我们选举这个实体参数,来进行一个快速的这个标准字段的一个创建 接口方法的入参也类似,然后是接口的这个入参和出参, 这里都是有通过这种常用的方式可以快速地填写好这些参数,那么这个参数的话会把,比如说我选一个常用参数,那么接口参数呢?它的配置会相对多一些, b、 i、 d, 那么他会把这个字段的英文名,中文解析,甚至还会有一些维护了这个教验的一个魔方式,都会把它自动的带出来,从而这样的话呢,就是一来是可以加快我们的这个 业务组建的构建,第二是形成一个开发规范。接下来我们看一下快速建模的模块,在 my bill 平台服务模型配置管理,打开界面列表, 那么快速建模的规划呢?会有以下几种,但是目前只开放了数据表的一个构建, 那么未来还会有整个完整的模块的一个快速的一个构建,包括引入 ai 的 构建功能也是这样的一个规划。那么我们看一下数据表的一个快速建模的一个效果,我们打开一个实际的案例, 那么这一个其实是一个数据表的建模信息的一个填写,包括表的名称说明,呃,存储的一个数据源, 然后是数据表的一个字段的一个设计,那么这个模块它好用的地方在哪里呢啊?首先它是支持一个啊,一个跨页就跨模块间的一个复制粘贴啊,啊,一个 支持一个导入导出,那么这个我们可以在一些啊重复或者相近的一些表里面啊,进行一些自断的拷贝,通过复制粘贴进行一个复用,从而达到这个快速建表的一个效果。同样它也是可以通过 这个选取的方式,把一些已有的常用的参数 以及现有的表结构的字段呃呃取出来进行一个创建,那么最终建表的 一个操作呢?是一个会员专属的一个功能。就比如说我设计好这一个模型之后,我要把这个模,这个表创建,这需要点一下这个新建这一个表, 然后这里呢会有一些我我们常见的维护操作,比如说我新增字段,或者对这个字段进行一些备注调整啊,或者更改这个数据类型,那么我们也有相应的一些操作啊,但是我们是排除了两种类型的操作,比如说参制段, 比如说啊自断重命名。那么这两种操作呢?我还是建议你们直接呃改是个数据库,因为这些是比较呃高危的一些操作。

买 build 在 新版本二十四点二十七对表格组建功能进行了一个增强,主要有以下这几方面,首先是新属性的设置指示,新增了行高、边框、列合并等属性的编辑。 另外新增了数款子组建,包括可选输入框、图片进度条和步骤条。 第三个是增加了焦点控制的函数,比如说水平的焦点控制以及垂直的焦点控制。 接下来将以实际的案例讲解这新的功能。画面所示,表格组建增加了行高的一个设置,对于行高有要求的场合,比如说在电商的后台,商品的 详情列表会有说略图,一般行高会设置的高一些,这可以根据实际的情况来灵活设置这个行高。然后列索性这里 增加了合并的一个设置。合并,如果是垂直方向有相同的内容,它会自动判定,并且将内容进行一个合并。 这个是没有合并的一个情况,大家可以看到这个数据的一个规律,当我勾选了这个选项之后, 它就自动地合并了垂直,合并了相同的一个内容。然后是边框的设置,这里呢可以设置表格的外部边框、 内部边框和全部边框的一个显示。我们再看一下新新增的一个子谱键。首先是图片组建, 开启可编辑选项,然后就可以获取到这个图片组建。进度条和步骤条的组建也类似同样的方式进行一个选举 步骤条。属性 步骤条,它的数据源是可以支持一个静态的步骤数据源以及动态的一个数据源。 接下来我们看一下这个预览的一个效果, 大家可以看到预览的时候是根据后台的实际数据进行一个渲染,这个图片进度条和步骤条都是根据实际的数据状态进行一个显示。 接下来我们介介绍一下表格输入焦点的一个控制的功能,我们先看一下这一个效果, 这里 enter 键之后可以实现这个输入焦点垂直的一个变化,是否键 enter 就是 一个逆往上走的一个变化,或者 enter 键,比如说 enter 键它往往右的方向进行一个变化, 这种焦点的控制在表单录入的场合会使用的比较频繁, 让输入的工作进行一个自动化的焦点的一个控制。接下来我们看看是怎样来实现这个效果的。 我们先看一下这个输入框里面的一个脚本属性,我们找到 enter 键的一个处理脚本, 首先我们通过这个函数获取这个 table 组建,然后调用 table 的 焦点控制函数,这里可以判定是否按下 shift 键来进行一个前进还是后退。 那么 table 的 焦点控制函数主要有以下这几个,它有 next add 是 水平方向的焦点控制,然后 row add 是 垂直方向的焦点控制画面两个是 回溯的焦点控制函数,那么通过这四个函数就可以实现表格输入焦点的一个自动扭转, 那么我们可以结合不同的事件事件脚本来决定不同的焦点的控制时机,比如说只改变的时候,我就希望它自动跳到下一个脚本,那么这个功能也是可以实现。最后我们看一下可选输入框的一个效果, 那么可选输入框它其实是一个输入的食物,可以提供一个下拉选举的这么一个组合的一个组建,我们可以看一下,可以通过右边的按钮进行一个下拉的一个选举, 也可以通过数键盘输入的时候,它自动进行一个下拉选提示, 然后通过鼠标的上下键可以进行一个自动的选举选举可选输入框可以不在鼠标操作的情况下,通过键盘就可以完全实现数据的一个录入,这样可以保障在表单录入过程中的一个呃操作的一个连贯性。 接下来我们看一下可选输入框的一些属性的设置, 其中数据源是最主要的属性编辑项,这里可以指定 可选输入框的数据源提供方式,我们可以来自于选择器,也可以是字典 n 组,可以是动态的一个数据源,也支持一个静态的数据源。画面所示它是连接了一个叫做用户选择的一个选择器, 这里出示值,这里是对这个选择器发送,自动发送自个查询参数,比如说模糊搜索的一个关键词以及默认分页的一个页页数, 那么可选输入框它还可以实现一个回写的规则,常见的场合,比如说我选举了一个商品信息,那么回写 这个商品的编码名称或者规格属性等等,那么这一个在填报的过程中是很常见的一个需求。

如果你是个程序员,那你一定知道 oh my stash 是 怎么让 shell 的 体验脱胎换骨的。今天要讲的 oh my op in code 在 ai 编程领域扮演的就是这个角色。简单直接点说,它不是个简单的插件, 而是一套把 open code 武装到牙齿的深度编排框架。它彻底解决了 ai 写代码单兵作战的痛点,直接把你的开发环境升级成了多特工协同的团队模式, 也就是让 gpt 搞架构,可捞的查文档、解密、写代码,各司其职。不过在开始拆解之前, 我得先泼盆冷水。这套方案非常硬核,涉及多模型编排和复杂的配置。如果你还没怎么玩过 open code, 或者对 ai 编程完全是零基础,建议先去翻翻我往期的基础教程,基础打牢了再来看这个,否则很容易被劝退。 opencode 的 原身体验最大的问题是什么?我觉得不是能力不够,而是心累。如果你不加任何配置,他就像是给你配了一个光杆司令,确实能写,但只能串行工作。最典型的场景就是代码写到一半,碰到个生僻的库,他不知道 api 怎么调,甚至开始瞎编。 这时候你必须强行停下来切出去查文档,查到了再复制粘贴位给他,告诉他用这个新写法。 这种平凡的上下文切换,实际上是把最耗时的脏活累活又扔回给了人。结果就是,你不是在写代码,你是在当 ai 的 保姆,不仅效率低,思路还容易被打断。那 oh my king code 是 怎么解决这个问题的?他的核心逻辑只有一句话,专业的人干专业的事。 他引入了一个编排器的概念,你可以把他理解为一个技术主管,当你下达任务后,这个主管不会自己闷头干, 而是直接把任务拆解分发下去。需要查新框架的文档,扔给擅长阅读长文本的 clot, 让他在后台慢慢读,需要扫描整个代码库,扔给专门的搜索 agent。 最关键的是,这些都在后台并行处理,完全不堵塞主线程。等他们把资料搜集齐了,主模型的上下文理就已经有了最精准的信息。这时候再动手写代码,准确率完全不是一个量级的。 整个 omgkin code 的 核心,一个叫西西福斯的编排 agent, 默认配置下,他跑在 cloud ops 四点五上。你要搞清楚,他的定位不是普通的马农,而是技术主管。 当你丢给他一个需求时,他绝不会马上打开编辑器开始狂敲代码。他的工作是先动脑子拆解需求,规划路径,然后像派单一样,把具体的活分发给手下最擅长的人去干, 他只负责指挥和最后的验收,这才是高级 agent 该有的样子。希奇福斯手下有两员大将,负责具体的代码产出。第一个是代号 oracle 的 架构师,用的是 gpt。 五点二,这哥们逻辑推理能力最强, 专门解决硬骨头,比如代码陷入死循环了,或者需要做高层的架构决策,西西弗斯就会把它叫出来救火。第二个是前端专家,用的是 gemine 三 pro, 为什么选 gemine 呢?因为它上下文窗口够长, 而且在创意生成上表现更好。凡是涉及 ui 界面、交互逻辑或者大端的前端样式,全部交给他。一个负责逻辑,一个负责脸面,这就是模型层面的各司其职。除了写代码的,还有两个专门搞情报的 agent, 这才是解决 ai 幻觉的关键。一个是 librarian 文档管理员,他专门负责翻阅官方文档和查找开源实线。比如你用了一个刚发布的新库, 他会先去把文档啃明白,而不是靠猜。另一个是 explore, 你 可以把它看作一个人肉雷达,它会利用 contextual graph 技术极速扫描你的整个代码库, 找出相关的代码片段。最爽的是,这两个家伙是在后台病情工作的希希弗斯在规划任务的时候,他们就已经把资料准备好了。我们把这些角色串起来,看一个实际场景。假设你要重构一段老代码, 并给他加个新的 dashboard 界面,当你敲下 ultra walk 指令,希希福斯启动,他会立刻派 explore 去扫描老代码的逻辑, 同时派 library 去查新 y 框架的文档。这两件事在后台瞬间完成。拿到情报后,他把上下文喂给 fronten 专家,让他开始写界面。假设中间翻译报错了,或者逻辑写歪了,希希福斯根本不需要你介入,他会直接把错误日期丢给 oracle, 让这个老架构师给出修复方案。这就是一个完整的自动化的团队写作闭环。市面上大多数 ai 编程工具有个致命弱点就是瞎。在他们眼里, 代码和写小说没什么区别,本质上都是一堆字母串。他们所谓的写代码,其实是在做文本补全,根本不知道这个变量在哪里定义过, 也不知道这个函数被谁调用了。这就是为什么 ai 经常一本正经的胡说八道,而 my open code 最大的技术突破就是给 agent 装上了 lsp, 也就是语言服务器协议 这东西就是 vs code 的 这种 ide 能够智能提示的核心。加上这个之后, agent 就 不再是盲写了,它能真正看见代码的结构, 拥有了和人类程序员一样的语义感知能力,这是从猜代码到懂代码的质变。有了这双眼睛, agent 具体能干什么?首先是不再靠猜, 以前 ai 找代码是根据文件名瞎翻,现在他可以用勾头 definition 瞬间跳转到定义处,或者查找所有引用。其次是能看到报错红线,不用等运行,在写的时候, diagnostics 就 能告诉他哪里语法错了。最重要的是重构能力, 大家都有过用查找替换改变良民导致误伤的经历吧? edison 现在可以用 elsepool rename 基于羽翼进行项目集成命名,绝对安全。另外,它还集成了一个大杀器,叫 a s t g rap, 这是基于抽象语法术的搜索,不管你的代码格式怎么换行嵌套,它都能精准定位模式, 这比脆弱的正则表达式强太多了,这才是真正的工程化能力。聊完了工具,我们来聊聊人性。不对,是 ai 的 惰性。大家用 ai 写代码,最烦的一点 就是他经常写一半停了或者改了文件 a 却忘了文件 b。 针对这种烂尾行为, oh my open code 寄出了一个大杀器,叫拉尔夫循环,也就是 ralph loop。 这个机制非常霸道,它在系统层面上规定,只要 agent 的 输出里没出现承诺完成这个特定标签, 系统就默认任务没干完。不管 agent 是 想偷懒还是逻辑卡壳系统都会直接把它提回工作状态,强制它继续续写。这种自参照的闭环逻辑,就是要把 ai 所谓的自觉性变成系统的硬性约束, 不把活干到百分之百,它就别想下班。除了强制续跑,这套框架还给 agent 带了两道紧箍咒。 第一道是代办列表强制执行, agent 必须自己维护一个代办清单,如果最后还有哪怕一个项没勾掉,系统就会判定它任务失败,直接打回去重做。第二道紧箍咒我个人非常喜欢, 就是注示检查器。咱们都知道 ai 特别喜欢写那种废话注示,比如再定义一个变量,后面写个这是个变量。在 oh my encode 里, 这种垃圾注视会被直接拦截, agent 必须证明这段注视是有价值的,否则系统会直接把它干掉。这种对代码洁癖的坚持,才能确保 ai 吐出来的不是一堆电子垃圾,而是真正能进生产库的工业级代码。 如果你之前是 cloud code 的 老玩家,完全不用担心之前的配置废了。这个项目专门做了一层兼容层, 你之前调友好的设置,点 jason 钩子,配置好的点 m k, 点 jason 服务器,甚至是自定义的 markdown 扩展指令,它全都能直接读取。这也就意味着,你不需要重新造轮子, 就能直接把之前的资产带进这个多模型编排的新战场。怎么装?一句话,别去翻那些复杂的文档了,直接在终端跑。这行棒插命令,只要你有那几家主流大模型的订阅,它就会自动检测, 并帮你把对应的 a 证专家分配好。参数里的杠杠 no 杠去 y, 就是 为了让你跳过那些没用的交互界面, 实现真正的静默安装,一步到位。最后分享一个作者预留的懒人魔法词叫 ultra work, 缩写就是 u l w。 平时你根本不需要去记那些复杂的指令,只要在你的需求后面加上这三个字母, 机器浮丝就会自动接管一切。他会自己去扫盘,去翻文档,去调 lsp 接口,直到把你所有的代办事项全部清空,并保证代码能跑通。 这个项目不只是个工具,它其实是把 ai 编程的最佳实践固化成了一套全自动流水线。感兴趣的可以去马云或者 github 上搜一下这个项目。

兄弟们快跑,现在连小烧鸡都各种拉十年了,工艺类核难道真的稳不住了吗?现在我是真的怀念橘子和葫芦娃呀,如果给我一次再来一次的机会的话,我会跪着求他们不要退网。想问一下兄弟们都在玩什么类核呀?我最近都在用外 g 类核,这个类核还是挺不错的,这个外 g 玩了一个星期了,挺稳定的。 如果最近你们也没有什么好用的类核的话,可以试一下,如果有的话也可以分享给我,反正我现在在用这个外 g 是 真的挺不错的。

你还在手动拼接变量和值来调试代码吗?今天分享一个能大幅提升你的开发效率的 f string 小 技巧。首先,我们想看看一加 b 的 合适多少,同时还要向用户清楚地展示我们正在执行的是一加 b 的 操作, 所以我们可以这样写。现在如果我们运行这段代码,输出会是这样的, 这非常清晰明了,准确告诉我们执行了什么操作才得到这个结果。但这样做需要多打不少字符。作为一名专业的开发者,我可不想多敲六个字符。 那么有没有更方便的语法堂能实现完全相同的效果呢?答案是有,而且它真的很酷!你只需要在花括号里在表达式后面加一个等号等于就行了。比如写成 注意等号前后的空格会被保留下来。所以如果我们运行它,就会得到 e 加 b 等于十五 等号,前面的内容会原封不动地显示出来。但真正酷的地方在于,无论你执行什么操作,比如把转换成不二值, f 不 i 等于 它都会完整保留你写的表达式并输出结果,比如不 a 等于 true。 同样的道理也适用于变量,比如我们打印字母串变量 f my 下划线 y 等于, 输出就会是埋下划线 y 等于认真程序员,你手动写成埋下划线 y 等于埋下划线 y。 虽然这也行,但万一哪天你改了变量名,就得把所有硬编码的地方都改一遍,很麻烦。如果你喜欢该视频,请关注我,谢谢!

现在站在你面前的是二零二六内核圈最稳三大内核。第一名, y g 内核,这款内核可以说是这段时间最稳定的一款内核,因为我自己也在玩,可以遇见的是它可能也是二零二六年最稳的一款内核,超级推荐,支持全版本机型,真超级稳定。 第二名,蜂鸟内核这个项目也是老项目了,无论是稳定性还是可玩性都是在内核圈数一数二的。 第三名,落叶内核这款内核想必兄弟们都不陌生,大名鼎鼎的落叶大神在二四年到二五年 s 三十五赛季以前都是很稳定的,可惜 s 三十六以后很多人都出现了单透拉压的现象,现在我也没完了,不知道真假。

我发现一直以来微软的这个允许我为每个应用窗口使用不同的输入法,都不是特别好用, 好像经常会失效。所以今天用 alt hot key 来写一个自动切换输入法的脚本,是机能在不同的窗口使用不同的输入法, 彻底解决这个 windows 不好用的问题。我们首先来到奥特奥特 k 的 官网,下载它的安装软件进行安装它这个应用程序在实际运行中时,它实际消耗资源是很低的,像我这里 运行这个脚本只需要消耗二点四 mb 的 内存就可以了,其他资源没有损耗,所以不用特别担心资源的消耗问题。然后就要写这个切换语言的脚本了, 脚本就直接会放到 github 上,目前的逻辑就是,如果是打开命令行,或者说是我的一个终端程序叫特米慕斯, 我们就把它切换到英文的语言。我们这里提前需要安装好英文输入法,还有一个中文输入法,他的英文输入法美式英语 id 是 四零九,中文是八零四,就跟你这个来切换。主要逻辑就在这里,如果当窗口切换的时候, 如果窗口是指定要用英语的程序,就切换到英语的键盘,如果是中文,其他的窗口,那就全部都切换到中文, 当然也可以实现完全记忆上一次使用的语法。我这里就简单一点,接下来我们来体验一下它的效果。首先我们现在是中文键盘有这个状态栏,现在我切换到 这个透明模式的终端,状态栏就会消失,就变成了之前设定的英文键盘。再切换回去,可以看到状态栏又出现了,现在输入又变成中文,同时如果我在这里使用 shift 把输入语法换成英文之后, 我们再切换到刚刚的应用,这里还是英文,但是再切换回来,我们这里依然是自动开启了中文,说明程序是有效的。然后获取到这个程序之后,直接双击打开就可以运行了, 双击这个 a h k 结尾的脚本就可以运行,今天分享就到这。

大家好,我是来自拉萨市人民医院神经内科的主治医师索朗德吉。嗯,大家好,我是来自于拉萨市人民医院神经内科的樊春秋医生。 今天呢,我和索朗德吉一起关于耳石症的问题呢,给大家做一些简单的介绍。呃,老师,作为头晕疾病中患病率最高的耳石症患者,会有哪些症状呢? 呃,耳石症呢,也叫做良性震发性位置性眩晕,患者呢,通常会在位置变化时出现短暂的眩晕发作。 比如说啊,患者在平卧位左右翻身的时候,在低头抬头的时候,出现短暂的体旋地震感。那么这种眩晕感觉呢,通常持续时间不到一分钟, 发作时,患者会感觉自己会有过山车的感觉,所以呢,因为反复发作,患者会觉得这种感觉很痛苦,会引发他的焦虑和恐惧的感觉。 老师,那我们耳石症的话是患者耳朵里头有石头呢,如果像掏耳朵这样的动作,会不会引起耳石症呢? 耳石症呢,是发生在内耳的疾病,内耳的椭圆囊囊帮上呢,有一些耳石,我们也叫做碳酸钙结晶,他进入半轨管之后呢,带动淋巴液流动,会产生呢与重力相关的一个短暂的头晕发作。但是我们平时呢, 呃,掏耳朵的时候呢,我们其实是清理外耳道,并不是涉及到内耳,所以掏耳朵并不会导致耳石症的发生。嗯,那老师,耳石症是可以治愈的吗? 呃,耳石症呢,是一个良性疾病,基本上是可以治愈的,大多数耳石症呢,经过我们的复位治疗都可以痊愈。那部分难治性的复杂的耳石症呢,需要我们多次复位, 所以呢最重要的呢是我们病人有这样的症状的时候,要及时就医,及时诊断,那么我们医生可以给病人尽早的治疗,所以以后是非常好的。 那老师,耳石症,我们一般平常临床能见到一些耳石症有复发的,他是比较容易复发的吗?嗯,大多数病人是不会复发的,大家不要紧张,但是有一小部分患者呢,也会再次出现, 那大家为什么不用恐慌呢?因为即使复发了,我们医生复位治疗也同样有效。那怎么样呢?避免复发呢?那我们就要需要做一些事情来减少诱发耳石症的发作的因素 啊,就是减少复发。好嘞,老师,那老师,耳石症患者会有哪些危险因素呢?呃,目前报道的因素呢,就是女性病人啊,情绪容易波动的病人,维生素 d 缺乏的,头部创伤的。 呃,高脂血栓的病人,容易发作耳石症。那么我们有如上因素的病人呢,应该尽量的避免或者治疗,这些危险因素,就会减少耳石症的复发。 各位朋友,我们呢用了一个简短的时间介绍了一个耳石症,其实我们根本的目的是想告诉大家,耳石症是一个良性疾病,并不可怕, 当我们发生一个位置性的短暂眩晕的时候,那这时候不要恐慌啊,尽快到我们拉萨市人民医院的神经内科来找我们医生进行一个系统的诊治,那么很快会解决大家的痛苦。

问一下兄弟们,难道四系入外咱家真的低人一等吗?就在昨天,我在各大频道看到很多类核都在宣布将不再支持四系机型,难道四系机型真的稳不住了?还是说项目作者自己稳不住来怪机型了?在这里我告诉你们,不是机型问题,而是项目作者不行,因为前几天我还在玩其他类核,玩了两把就拉闸了,我去给他们客服说, 结果他们客服说是我机型的问题,说什么现在四点一四点一八六内核机型就是容易拉闸。但是昨天我朋友介绍我去玩了 yg 内核,玩了两天了,一点事没有,所以还是那句话,不是你机子不行,是项目作者不行, 但 yg 内核该说不说,真的很稳。

来吧,又是一道常考题,手写的括函数,括函数,不用解释了吧,咱们就直接开始写啊,这道题呢,它考察的不仅仅是知识,同时呢也考验你的思维缜密程度,就是你在写一些通用型代码的时候,能不能把一些边边角角,一些边界情况考虑清楚。首先是个函数,写在哪?那肯定是写到函数的原型上,是吧?来个 my call 啊,放个屁。 然后这个函数有哪些参数呢?首先它肯定有 d 的 参数, d 的 指向是吧?我们给它再设置一个 context, 那 么还有没有后续参数呢?那后续参数就不定了啊,那就看这个函数需要多少参数了, 不定了,那所以说我们用剩余参数来接收,对吧?好,那么首先第一个问题啊,就是我们要首先搞定这个 z 值指向,因为这个 z 值指向吧,它是要求必须是对象的,那如果说你传的不是一个对象的话,它会怎么样呢?咱们打印看一下吧,就把它运行出来看一下,你看当我们传递的不是对象的时候, z 值打印出来是啥呢?它是一个包装类型 啊,那你看还有一些别的元素类型,你看字母串,然后运行,你看是不是包装类型,对吧?这第一种情况。那么第二种情况呢,就是你的类型呢?传递的是什么? love 啊?啊? 还有什么 undefined 呀?那像这种情况下呢,它是 this 啊,它会指向全局啊,你看 node 环境里边就会指向这个 global, 如果说是浏览器环境呢,它就会指向 window 啊,这第二种情况。那么第三种情况呢?就是一个普通对象了,那普通对象的话,它就会指向这个对象,所以说呢,这里我们在最开始的时候啊,要对这个参数呢做一些处理,对它有很多种情况,我要把它处理一下, 这里处理呢,其实非常简单啊,我们可以用一个三步计算符就可以搞定它是不是等于 now, 或者是它是不是等于 undefined, 如果说是这种情况下的话,那么它就指向选举,那么选举你这里能不能写 window 呢?它是不行的,为啥呢?因为这个函数啊, 它是来自于标准库,也就意味着它是可以在浏览器环境里边运行,也是可以在 load 环境里边运行。那你浏览器环境的全键对象呢?是 window, 但是在 load 环境里边呢,它是 global, 对 吧?那么到底写啥呢?所以说呢,我们这里呢使用一个原生的 关键字啊,叫做 globes 来指代全句对象,这个玩意儿是原生支持的关键字啊,它表示说在浏览器环境里面呢,就指向全句对象。 window 在 log 环境里面呢,就指向的是全句对象。 global 啊,就只用这个一个关键字就可以了, 就是这种情况,那么其他情况呢,我们就直接把它用一个 object 这个构造器呢去包装一下啊,像这个 object 构造器的朋友应该都知道啊,就是通过它来包装一个东西呢,它就可以把它变成相应的对象了,比方说给它传入一个一,它就会得到一个 number 一, 对吧?一个包装对象给它传入这么一个东西呢,就得到一个包装内啊,如果说给它传的是一个普通对象的话,它就原封不动的得到这个普通对象, 那你看啊,现在我们经过了这么一个三步预算过后,是不是可以把这个 context 重新赋值,对吧?来确定 context 的 值到底是啥,就这个 this 指向到底是啥?好,那么这个第一件事就完成了,那么接下来就是它的核心功能了,它要做啥呀?它要做的事情无非就是去调用某一个函数,对吧?那么调用哪个函数呢? 你琢磨一下呢?你看,是这个 method 在 调用这个 call, 所以 说呢,它运行的是谁?运行的是个 method, 那 么这个 method 来调用这个 my call 呢?它运行的还是这个 method? 所以 说我们这里呢,要拿到这个 method 怎么拿呢?是不是就是 this, 对 不对?这个函数里边的 this 不 就是它吗? 所以说呢,我们拿到我们要运行的函数,好拿到运行函数过后能不能直接运行呢?那肯定不行啊,你直接运行过后呢?那是不是这个函数的 z 它就指向了什么啊?全局了,而我们现在要做什么?要绑定 z 啊?但是呢,他让你去手写这个括方法吧,那肯定是不希望你去借助什么 bend 呀,或者是 apply 呀,对吧?肯定是不希望你借助这些, 他如果说不借助这些东西来写的话,你想一想还有什么样的办法能够让这个 fn 函数它的 z 指向这个 context? 还能有啥办法?你是不是只有这种办法了?看好了, context。 第二, fn 利用我们 g s 语言天生的特性,你这样一调用,这个函数里边的 z s 不 就指向它了吗?是不是我们要的不就这样吗?让这个函数的 z s 指向它,对吧?把一个参数传进去,然后达到一个逆行的结果,最后呢把这个结果返回, 但是你这样做肯定不行啊,为啥呢?你运行看一下吧,他肯定报错,他说这个根本就不是一个函数,为啥呢?因为这个认识里边他根本就没有这个 fn 这个属性啊。那没有怎么办?没有的话你再加一个呗, 对不对?再加一个。好,你看现在在运行是不是就出来了?但是现在呢,还是有些隐患的。什么隐患呢?你看啊,我往这个对象里边去加了一个什么 fn, 对 吧?这个 context 就 这个东西嘛。那万一这个对象它本身就有一个 fn 呢?那不就冲突了吗?那你是不是把这个 fn 给它覆盖掉了, 能理解吧,所以说呢,这一块呢,你这里用啥名字是个问题,你会发现这里用啥名字都不行,你用啥名字他都有可能会导致这个冲突,那万一他就有同名的一个东西呢?注意啊,你这里写的是通用型的代码, 哪怕有些事吧,出现的几率再低,只要他有几率出现,他就一定会出现。那问题是这里能用啥呢?用啥东西可以保证一定不会跟这里造成冲突呢?是不是 es 六的东西要减一减啦? 用啥?用符号,利用符号的唯一性来产生一个属性好,于是呢,我们这里呢,使用符号来给他复制,到后面调用的时候呢,是不是也用符号来调用,对不对?然后再运行看一下,对吧?他就不会打扰到这个对象里面原本的东西了,对吧?还是加了一个符号, 那这里完了吗?其实还没完。那你看我打印的时候老是把这个东西显示出来也不太合适,这玩意是临时用的是吧?我们最好呢,希望便利的时候呢,就不要把这个东西便利到了, 我的未来是去实现这个功能,你是假的。所以说在便利的时候呢,还要把这个东西去掉,不希望他显示出来。你看这里边还细节还不少,就我们平时开发的时候, 如果说你开发的是个业务型的代码的话,其实很多东西不注意的话也没关系。但是一旦你开发一些通用型的代码的话,很多的边边角角,细枝末节你就得注意了,因为你留下的任何一个细微的缺陷,都有可能在别的场景里边会放大,而你要养成一个良好的开发习惯,有一个正确的开发思维,就好好来看我的大师课。大师课是完全免费的啊,那领取完事了, 大车的内容呢?首先提醒你啊,有一点难度的,但是呢,恰恰是这些深度的知识,最能够让你在短时间内获得最大的提升。训练嘛,就得负重啊,你不负重你训练啥呀,还不如躺着你 花几天的时间把大车认认真真学完,你之后再写代码,感觉都不一样了。而像开发思维的培养啊,也只是大师课的其中一个方面,大车更多的是关注了,前端是最核心最重要,最能够直接影响你薪资高低和职业发展的知识。一些源码问题、优化问题以及 v 八引擎原理的问题,都会在大车里边做深入详细的探讨。 而这些东西对将来成为高级工程师、架构师,前端 leader 都能够持续的发挥作用,所以说这么厚重的一份福利啊,你 别又错过了,而且这个课呢,目前可以免费领啊,怎么领?在咱们账号主页,点击头像进入账号主页,根据提示领取。完事了,好,咱们说回来啊,现在我们要做的事是要把这个东西呢,它显示不出来是吧,那这个简单,我们可以利用啥呢?利用 es 五的 object to find property。 我写下边我们就不能用这种方式来添加属性了,因为这样方式添加的属性呢,一定是可被遍地到的。所以说呢,我们来一个 define property 啊,这个在大词典里边也有详细的讲解啊,好给它设置个白柳直为啥? f n, 对 吧,那就不用这句话了啊,还加上那个 innumerable 啊,可便利性把它设为 force。 这个玩意是一个属性描述符的知识啊,在大词典里有讲解。好来看一下啊,你看我们新加了个没了是吧, 然后呢,我们换成别的,这是绑定的,比方说换成个一对吧运行,你看没问题了是吧?最后呢,你不要忘记啊,要把这个符号属性呢给它删除掉,因为它毕竟没用了嘛,它就是临时用一下绑定,这是 要把这个东西呢给它删除掉了。好了,那么整个后函数就写完了,代码呢倒是不多,通过这个函数呢,同学们也可以想象到啊,那些通用型代码里边是不是要考虑的更加细致一些啊,不过这里呢,我顺便说一下啊,在原声的 gs 啊,就浏览器里边是不是要考虑的更加细致一些啊,不过这里呢,我顺便说一下啊,在原声的 gs 啊,就浏览器来完成了这个东西, 在他这个环境里面呢,要改动这一次指向是非常非常简单的,但是呢,我们没办法啊,用 gs 层面来写的话,只能写成这个样子。不过这个题的本意呢,他不是说让你以后在工作当中去熟悉一个课,他不是的,本意是考察你是否具备一些通用代码的书写能力啊,这是一个基本能力。
![【冰DK】正式服全职业无脑教学 一周目:天赋加点、输出手法、一键宏设置。
天赋代码:
CsPAtbMOTHlnKIwUyAn+DK70SzAMzYmZMzYgxMzMzYmZmJzYMDGYGzMYmZmZmZZmBAAAAAAAAAAAAAAAAAgZmZYGA
——————
常规循环宏:
#showtooltip
/castsequence reset=4 湮灭,湮灭,冰霜打击,湮灭,冰霜打击,湮灭,冰霜打击
/cast 冰霜之柱
——————
大招群伤宏:
#showtooltip
/castsequence [@cursor] reset=16 冷酷严冬,枯萎凋零 ,冰霜巨龙之怒,憎恶附肢
/cast 亡者复生
——————
注意 [ ] 是英文,不是【】,宏命令中的逗号全部是英文。
#魔兽世界勇士集结 #魔兽世界 #魔兽世界正式服 #魔兽世界攻略必看 #游戏](https://p9-pc-sign.douyinpic.com/image-cut-tos-priv/f16cb1b650565cb4a19a9192dc8bdf78~tplv-dy-resize-origshort-autoq-75:330.jpeg?lk3s=138a59ce&x-expires=2084626800&x-signature=mWlDtayA0X3IOV%2BAW8a%2FmVCFeWI%3D&from=327834062&s=PackSourceEnum_AWEME_DETAIL&se=false&sc=cover&biz_tag=pcweb_cover&l=2026012423075005451AB07723E70AE685)