js文件调用方式:
<script src="./xx.js?a=b"></script>
获取参数的方法:
function getQueryVariable(variable)
{
var src = document.currentScript.src;
var getParam = src.su...
网络分层架构
典型协议
传输层:常见协议有TCP/UDP协议
应用层:常见的协议有HTTP协议,FTP协议
网络层:常见协议有IP协议,ICMP协议,IGMP协议
网络接口层:常见协议有ARP协议,RARP协议
TCP传...
条件变量的作用并不保证同一时刻仅有一个协程(线程)访问某个共享的数据资源,而是在对应的共享数据的状态发生变化时,通知阻塞在某个条件上的协程(线程)。条件变量不是锁,在兵法中不能达到同步的目的,因此...
注意:仅作为学习参考,并没有完整实现所有类型
type User struct {
Name string
Age int
Sex byte `json:"sex"`
}
type Book struct {
ISBN string `json:"isbn"`
Name ...
time.Timer
Timer 是一个定时器。代表未来的一个单一事件,你可以告诉timer你要等待多长时间。
type Timer struct {
C <-chan Time
r runtimeTimer
}
它提供一个channel,在定时时间到达之前,...
概述
简而言之,所谓并发编程是指在一台处理器上“同时”处理多个任务。
随着硬件技术的发展,并发程序变得越来越重要。web服务器会一次处理成千上万的请求。平板电脑和手机app在渲染用户画面同时还会后台执行...
应用的源码仓库:https://github.com/zhuanzhuanfe/call-app
下载源码,引入到页面
import CallApp from "../assets/js/call-app/src/index";
具体实现方法如下:
const callApp = new CallApp({
custom...
安装:npm install vconsole
新建 vconsole.js 文件 ,在文件中写入
import Vconsole from 'vconsole'
const vConsole = new Vconsole()
export default vConsole
在main.js文件中引入
import vConsol...
redis目前还不支持批量删除key的命令,但是我们有时需要删除符合某个规则的keys,可以利用 Linux 命令查询出所有的key,然后一次性删除。
完整命令:
./redis-cli -h 127.0.0.1 -n 1 -a 123456 --no-auth-war...
func main() {
msg, err := ExecAsRes("ls -al|grep test")
fmt.Println(msg, err)
}
// ExecAsRes 执行shell指令,有返回值
func ExecAsRes(cmd string) (msg string, err error) {
param :...
func main() {
err := CreateMutiDir("/Users/jackey/a/b")
if err != nil {
fmt.Println("创建失败", err)
} else {
fmt.Println("创建成功")
}
}
// CreateMutiDir ...
什么是反射
在运行期间(不是编译期间)探知对象的类型信息和内存结构、更新变量、调用他们的方法。
如何使用反射
函数的参数类型是interface{},需要在运行时对原始类型进行判断,针对不同的类型采取不同...
package main
import (
"context"
"fmt"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
"go.mongodb.org/mongo-driver/mongo/readpref"
"...
声明一个泛型函数
package main
import "fmt"
func printSlice[T any](s []T){
for _,v := range s{
fmt.Printf("%v\n",v)
}
}
func main(){
printSlice[int]([]int{66,77,...
package main
import (
"fmt"
"reflect"
)
type Animal struct {
A string `json:"a"`
}
func (m *Animal) Eat() {
fmt.Println("eat", m.A)
}
func main() {
animal ...