JavaScript数据数据类型判断

jetson orin nano 使用cuPCL jetson开发板上使用pcl时,正常使用的是cpu,拖慢了整体的效率。cuPCL有一些库用于使用CUDA处理点云。 阅读详情
  1. 数据类型
    基本数据类型:string、number、boolean、null、undefined、symbol
    引用数据类型:object、array、function
  2. typeof
    typeof操作符返回一个字符串,表示未经计算的操作数的类型
console.log(typeof 42);
// expected output: "number"

console.log(typeof 'blubber');
// expected output: "string"

console.log(typeof true);
// expected output: "boolean"

console.log(typeof undeclaredVariable);
// expected output: "undefined"

console.log(typeof null);
// expected output: "object"

var a = Symbol(3)
console.log(typeof a);
// expected output: "symbol"

var arr = [1,2,3]
console.log(typeof arr);
// expected output: "object"

var obj = {a:1}
console.log(typeof obj);
// expected output: "object"

var func = function () {
  console.log(1)
}
console.log(typeof func);
// expected output: "function"

typeof 可以正确检测出number、string、boolean、undefined、symbol、function,而null、array、object检测结果均为object,无法准确判断
3. instanceof
instanceof运算符用来检测构造函数的prototype属性是否出现在某个实例对象的原型链上

function Car(make, model, year) {
  this.make = make;
  this.model = model;
  this.year = year;
}
const auto = new Car('Honda', 'Accord', 1998);

console.log(auto instanceof Car);
// expected output: true

console.log(auto instanceof Object);
// expected output: true

var num = 2
console.log(num instanceof Number);
// expected output: false

var bool = false
console.log(bool instanceof Boolean);
// expected output: false

var str = 'string1'
console.log(str instanceof String);
// expected output: false

var temp = Symbol(2)
console.log(temp instanceof Symbol);
// expected output: false

console.log(null instanceof Object);
// expected output: false
console.log(undefined instanceof Object);
// expected output: false

var arr = [1,2,3]
console.log(arr instanceof Array);
// expected output: true

var func = function() {console.log('123')}
console.log(func instanceof Function);
// expected output: true

var obj = {a:1}
console.log(obj instanceof Object);
// expected output: true

instanceof不能区别undefined和null,基本类型不用new声明的也检测不出来
4. constructor

function Car(make, model, year) {
  this.make = make;
  this.model = model;
  this.year = year;
}
const auto = new Car('Honda', 'Accord', 1998);

console.log(auto.constructor ===  Car);
// expected output: true

var num = 2
console.log(num.constructor === Number);
// expected output: true

var bool = false
console.log(bool.constructor === Boolean);
// expected output: true

var str = 'string1'
console.log(str.constructor === String);
// expected output: true

var temp = Symbol(2)
console.log(temp.constructor === Symbol);
// expected output: true

//console.log(null.constructor === Object);
// Error: Cannot read property 'constructor' of null

//console.log(undefined.constructor === Object);
// Error: Cannot read property 'constructor' of undefined

var arr = [1,2,3]
console.log(arr.constructor === Array);
// expected output: true

var func = function() {console.log('123')}
console.log(func.constructor === Function);
// expected output: true

var obj = {a:1}
console.log(obj.constructor === Object);
// expected output: true

constructor无法判断null和undefined
5. toString

function Car(make, model, year) {
  this.make = make;
  this.model = model;
  this.year = year;
}
const auto = new Car('Honda', 'Accord', 1998);

console.log(Object.prototype.toString.call(auto));
// expected output: [object Object]

var num = 2
console.log(Object.prototype.toString.call(num));
// expected output: [object Number]

var bool = false
console.log(Object.prototype.toString.call(bool));
// expected output: [object Boolean]

var str = 'string1'
console.log(Object.prototype.toString.call(str));
// expected output: [object String]

var temp = Symbol(2)
console.log(Object.prototype.toString.call(temp));
// expected output: [object Symbol]

console.log(Object.prototype.toString.call(null));
// expected output: [object Null]
console.log(Object.prototype.toString.call(undefined));
// expected output: [object Undefined]

var arr = [1,2,3]
console.log(Object.prototype.toString.call(arr));
// expected output: [object Array]

var func = function() {console.log('123')}
console.log(Object.prototype.toString.call(func));
// expected output: [object Function]

var obj = {a:1}
console.log(Object.prototype.toString.call(obj));
// expected output: [object Object]

在任何值上调用object原生的toString()方法,都会返回一个[Object NativeConstructorName]格式的字符串
6. 常用判断

说明方法
是否是数字!isNaN(x)
是否是数组Array.isArray(x)
是否是对象Object.prototype.toString.call(xx) == ‘[Object Object]’
是否是空对象JSON.stringify(xx) === ‘{}’
是否是null或undefinedx == null
是否是nullx === null
是否是undefinedx === undefined
Backtrader官方中文文档:第四章Concepts基本概念 官方Concepts章节:https://backtrader.com/docu/concepts/ 阅读详情

相关推荐

ubuntu20.04下dsp-slam的运行配置

DSP-SLAM:具有深度形状先验的面向对象的 SLAM

baidu_38431960的博客 3158

【前端】【新手上路】原生JS实现Code39条码

需求说明 昨天在做毕业设计的时候,其中一个功能是要完成在输入货物编号后生成条形码。为了凑凑毕设说明书的字数,俺用JS+canvas做了个条形码生成器。 因为之前在编码的时候没有按照标准给货物进行编码,导致货物编号长度不定,所以这里选用不定长的code39码。 正文 在前端页面生成条码俺想到两种方法,一个是用div标签组合成图形,另外一个是canvas标签进行绘制。因为要方便保存打印,所以这里选用canvas标签的方法。 首先先给页面加入一个canvas标签 <canvas id="Canvas" wi

把叉烧给我 671

C#创建COM组件,QT调用COM组件简单测试(VS2008+QT4.6.4)

一. C#创建组件: 1. VS2008新建一个项目,选择Visual C#, Class library 修改Properties下面的AssemblyInfo.cs文件,ComVisible属性设置为True,即:[assembly: ComVisible(true)] 2. 右击项目,选择“属性”, 选择“生成”选项卡,把“为COM互操作注册”勾选上 选择“签名”选项卡,把“

3517

js/java script各种判断数据类型的方法

js如何判断(复杂)数据类型 <给各位小白的各种判断数据类型讲解> 首先是JS的数据类型 基本有5种基本数据类型:String,Number,Boolean,Null,undefined。 1种复杂的数据类型Object,比如Object、array、function、date等。 ES6新增了一种基本数据类型symbol 1. Object.prototype.toString.call()(推荐使用) 该方法最繁琐,但最通用(简单和复杂类型都可以检测) let a = []; let

m0_52022213的博客 516

[pcie]gen6 下 L0p

000b~100b: 触发L0p 操作流程协商工作link width 到target link width.为111b:link width 硬件动态调整。硬件动态:Device control 3 register.target link width=111b当pcie链路检测到空闲状态时,设备可以主动进入L0p状态。L0p 是pcie gen6 新引入的链路状态,是L0的子状态。(5)LINK WIDTH:当LINK WIDTH CHANGE.cmd为Request时表示请求的链路宽度。

BIG_APPLE1的博客 1675

EXCEL VBA从入门到精通 第一章:VBA入门

在VBA中,需要使用关键字Dim来定义一个变量,后面跟上变量名和变量的数据类型。例如,下面的代码定义了一个整型变量x和一个字符串变量name在VBA中,使用关键字Const来定义常量,后面跟上常量名和常量的值。例如,下面的代码定义了一个整型常量MAX_NUM和一个字符串常量MESSAGE需要注意的是,常量一旦被定义,其值就不能被改变。

1万+

JavaScript篇:JS数据类型大乱斗:谁才是类型判断的王者?

大家好,我是小杨,一个在前端圈子里摸爬滚打多年的开发者。今天咱们来聊聊 JavaScript的数据类型,以及如何准确判断它们。

欢迎来到我的前端博客!这里汇集了关于前端开发的最新技术、实用工具和经验分享。我将为你提供详细的教程、代码示例和实战案例,帮助你掌握Web开发的核心概念和技能。不论你是初学者还是有经验的开发者,这个博客都适合你。 1083

C# 的 Dapper 库高级进阶:刨根问底的深度解析

通过今天的探索,我们了解了 Dapper 的一些高级功能,包括如何处理复杂的查询、执行批量操作以及如何优化性能。希望这篇深入浅出的文章能帮助你在实际项目中更好地运用 Dapper!🎈好了,小伙伴们,今天的分享就到这里啦!如果你有任何疑问或者想要分享自己的经验,请在评论区留言。我们下次再见!👋上述示例代码仅供参考,实际使用时请根据项目需求进行适当调整。✨Dapper 官方文档Dapper 性能优化指南Dapper 动态参数使用来同时执行多个查询。利用Execute和Query方法来简化 SQL 调用。

java专栏 812

[Javascript]:JS数据类型、类型判断、函数function与Function的使用

因为之前学过Java,在学习JS时,对JS的数据类型、function和Function的使用概念容易搞混淆,理解不怎么深刻。遂将这些知识点和概念梳理一遍,以便自己和他人理解。如有错误,敬请谅解。       知识点会涉及到:JS数据类型、JS的类型判断方式、函数创建方式、function与Function的区别、匿名函数的使用、函数特点以及函数重载问题。 Javascript数据类型

我只是个程序员。 1万+

【原理图PCB专题】Cadence 17.4版本导出excel版本坐标文件

Cadence 17.4版本导出坐标文件往往都是txt格式,并且无标题、导出时间、导出设计工程多名称等信息。那么怎么样才能导出有带这些信息的excel版本并格式好看的坐标文件呢?

一点硬件 2763

【AI Agent】Hermes Agent解析

Hermes Agent:一个具备持久化学习能力的开源AI Agent框架 核心特点: 突破传统Agent的"无状态困境",通过记忆系统(SQLite+FTS5全文检索)实现跨会话经验积累 支持200+模型自由切换,11种模型家族和15+平台接入 五层架构设计(入口层、编排层、推理层、工具执行层、存储层)实现平台无关性 47+内置工具和动态技能沉淀机制,支持从任务执行中自动提炼可复用Skill 独特的四层记忆体系(会话/每日/长期/向量索引)和辩证式用户建模 与传统Agent对比: 具备自我进化能力,通过A

sysu_lluozh 921

js数据类型判断

js数据类型判断一共有四种方法 typeof、instanceof、constructor、Object.prototype.toString.call()、jquery.type() 下面我来为大家一一的介绍一下 1、typeof 基本数据类型中:Number,String,Boolean,undefined 以及引用数据类型中Function ,可以使用typeof检测数据类型,分别返回对应的数据类型小写字符。 另:用typeof检测构造函数创建的Number,String,Boolean都返回ob

weixin_58032613的博客 1万+

AMBA-CHI协议详解(七)

本节描述该协议包含的支持系统保序需求的机制。

Crazzy_M的博客 1158

JavaScript 中四种常见的数据类型判断方法

本文比较了 JS 中常用的数据类型判断方法, 我们探讨了它们的适用场景和注意事项, 这些方法在面试中也是常见的问题, 深入了解这些方法可以帮助我们准确判断数据类型, 提高代码质量和可靠性....

潜隐-前端 3439

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

JavaScript判断是否为数值类型 - js的数据类型

需求 数值,或者数值型字符串,比如"123"可以通过校验。 其他类型不能通过校验。 举例 输入 结果 145 √ “145” √ “145ccc” × true × undefined × null × 对象 × 分析 首先要明确,js中一共有7种数据类型: 数值;字符串;布尔值;undefined;null;对象;symbol(ES6) 其中,对象包括:狭义的对象(object);数组(array);函数(function) 根据需求,我们需要的是先判断是数值或

weixin_43924896的博客 5442

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

js 判断各种数据类型

/** * 判断各种js数据类型 */ export default { /** * 判断是否是字符串 * @param value * @returns {boolean} */ isString(value) { return typeof value === "string"...

qq_38358436的博客 247

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

JavaScript学习总结(2)——JavaScript数据类型判断

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33744141的博客 205

JavaScript中的数据类型判断方法最全总结

在 JavaScript 中,主要有七种基本数据类型Undefined、Null、Boolean、Number、String、Symbol、BigInt,还有一种复杂数据类型Object,其中包含了Data、function、Array、RegExp等。JavaScript 不支持任何创建自定义类型的机制,而所有值最终都将是上述8种数据类型之一。由于JavaScript 是一种动态类型语言,这意味着你可以在程序执行过程中改变变量的类型。 基本数据类型与引用数据类型的区别:基本数据类型是指存放在栈(stac

幽幽谷 1589

js中判断数据类型的几种实用方法

最近项目中有不少地方需要判断数据类型,但是判断数据类型也有好几种方法,并且每种方法判断的数据类型也有局限性,所以想总结一下,方便以后查阅。分别是 typeofinstanceofjs数据类型的判断主要有三种方法:typeofinstanceoftypeof可以区分原始类型undfined和function数据类型;instanceof运算符适合判断对象数据类型,不适用原始类型的值。instanceof的原理是基于原型链的查询,只要处于原型链中,判断永远为true;区分自定义对象类型使用。

2401_87546826的博客 1803

JavaScript——判断js数据类型(类型检测)

1、typeof运算符 typeof算是最常见的了,使用它会返回一个字符串,适合函数对象和基本类型(js中的基本类型:number、string、boolean、null、undefined、object[对象])的判断。 console.log("测试number:"+typeof 1); console.log("测试string:"+typeof "str"); console.l

yCharlee的博客 4万+

js php 数据类型判断,JavaScript中的数据类型有几种?如何判断JavaScript中的数据类型...

JavaScript中的数据类型有几种?相信有很多刚刚接触JavaScript的朋友都会有这样的疑问。本章就给大家介绍JavaScript中的数据类型有几种?如何判断JavaScript中的数据类型。有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。如何判断JavaScript中的数据类型?我们可以用到以下几种方法:typeof、instanceof、 constructor、 pr...

weixin_34717586的博客 180

js中如何判断一个变量的数据类型

在某些情况下,我们可能需要对特定类型的对象进行更细粒度的检查。这时,可以通过组合上述方法创建自定义的类型检查函数。obj!== null &&!// true// false// false// false这个例子展示了如何构建一个用于检测纯对象(即非数组、非函数、非内置对象的普通对象)的辅助函数。类似的,可以根据业务需求定制其他类型的检查逻辑。

一个做过前端开发的产品经理,经历过睿智产品的折磨导致脱发之后,励志要翻身"农奴"把歌唱,一边打入敌人内部一边持续提升自己,为我们广大开发同胞谋福祉,坚决抵制睿智产品折磨我们码农兄弟! 1081

JS基本语法-JavaScript数据类型,数据类型的判断,undefined,Object,NULL,空类型

字符串(String)、数字(Number)、布尔(Boolean)、数组(Array)、对象(Object)、空(Null)、未定义(Undefined)。 JavaScript 不是强类型语言。与许多其他编程语言不同,JavaScript 不定义不同类型的数字,比如整数、短、长、浮点等等。

记录和分享程序人生的点点滴滴 413

JavaScript 中的所有数据类型 & 判断数据类型的方法

一文总结所有数据类型 & 判断数据类型的方法

Luckyfif的博客 2945
上一篇: Vue项目全局和局部组件
下一篇: Chrome谷歌浏览器离线安装vue-devtool
codezha
博客等级 码龄10年 28粉丝 98原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值