React十进制和二进制转换的实现和分析
【描述】
模仿官方文档的摄氏度和华氏度的转换,实现十进制和二进制的互换。
【实现】
import React from 'react';
import ReactDOM from 'react-dom'; function Convert(value,setWhat){
if(value===''){return ''}
if(setWhat==='setDec'){
return parseInt(value,2);
}else{
return parseInt(value).toString(2);
}
} class InputBox extends React.Component{
constructor(props){
super(props);
this.handleChange=this.handleChange.bind(this);
}
handleChange(e){
//数据流向:子->父。onChange事件接受父组件的回调函数,实现把event.target.value传到父组件
this.props.callBack(e.target.value);
}
render(){
return(
<div>
<p>Input: {this.props.title}</p>
<input value={this.props.selfValue} onChange={this.handleChange} />
</div>
)
}
} class Main extends React.Component{
constructor(props){
super(props);
this.callBack_changeDec=this.callBack_changeDec.bind(this);
this.callBack_changeBin=this.callBack_changeBin.bind(this);
this.state={
wanted:'wantDec',
result:'',
}
}
callBack_changeDec(inputValue){
this.setState({result:inputValue});
this.setState({wanted:'wantBin'});
}
callBack_changeBin(inputValue){
this.setState({result:inputValue});
this.setState({wanted:'wantDec'});
} render(){
var result_titleIsDec=this.state.wanted==='wantBin'?this.state.result:Convert(this.state.result,'setDec');
var result_titleIsBin=this.state.wanted==='wantBin'?Convert(this.state.result,'setBin'):this.state.result;
return(
<div>
<InputBox title='Dec' callBack={this.callBack_changeDec} selfValue={result_titleIsDec}/>
<InputBox title='Bin' callBack={this.callBack_changeBin} selfValue={result_titleIsBin}/>
</div>
)
}
}
ReactDOM.render(<Main />, document.getElementById('root'));
【解析】
React十进制和二进制转换的实现和分析的更多相关文章
- JAVA 十六进制和十进制、二进制转换
java十六进制和十进制.二进制转换 十进制转化成十六进制 Integer x = 100; hex = x.toHexString(x); 十六进制转化成十进制 Integer.parseInt(h ...
- java中十进制转二进制转换函数
十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Integer.toBinar ...
- HDU_2051——十进制到二进制转换
Problem Description Give you a number on base ten,you should output it on base two.(0 < n < 10 ...
- PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明
PHP函数篇详解十进制.二进制.八进制和十六进制转换函数说明 作者: 字体:[增加 减小] 类型:转载 中文字符编码研究系列第一期,PHP函数篇详解十进制.二进制.八进制和十六进制互相转换函数说明 ...
- C++进制转换(十进制转二进制、八进制、随意进制)
十进制转二进制: //十进制转二进制 #include<iostream> using namespace std; void printbinary(const unsigned int ...
- PHP函数十进制、二进制、八进制和十六进制转换
PHP函数篇详解十进制.二进制.八进制和十六进制互相转换函数说明,主要掌握各进制转换的方法,以应用于实际开发. 一,十进制(decimal system)转换函数说明 1,十进制转二进制 decbin ...
- PHP:第一章——PHP中十进制、二进制、八进制、十六进制转换
//十进制.二进制.八进制.十六进制转换 //十进制转换为二进制decbin()函数: //echo decbin(5);//输出:101 //十进制转换为八进制decoct()函数 //echo d ...
- C# 十进制与二进制、十六进制、八进制之间的转换
1.十进制 转 二进制 将十进制数不断地除2,将所有余数倒叙填写,即可得到所需二进制数据. public static string DecimalToBinary(int vDecimal) { / ...
- ocrosoft Contest1316 - 信奥编程之路~~~~~第三关 问题 x: 十进制到二进制的转换
http://acm.ocrosoft.com/problem.php?cid=1316&pid=49 题目描述 把十进制到二进制的转换. 输入 234 输出 11101010 样例输入 23 ...
随机推荐
- 天气预测(CNN)
import torch import torch.nn as nn import torch.utils.data as Data import numpy as np import pymysql ...
- java 11 不可修改集合API
不可修改集合API 自 Java 9 开始,Jdk 里面为集合(List/ Set/ Map)都添加了 of 和 copyOf 方法,它们两个都用来创建不可变的集合,来看下它们的使用和区别. 示例1: ...
- java jdbc ResultSet结果通过java反射赋值给java对象
在不整合框架的情况下,使用jdbc从数据库读取数据时都得一个个的get和set,不仅累代码还显得不简洁,所以利用java的反射机制写了一个工具类,这样用jdbc从数据库拿数据的时候就不用那么麻烦了. ...
- 关于opencv的cv2.WINDOW_一类
用法:cv2.namedWindow('窗口标题',默认参数) 默认参数:cv2.WINDOW_AUTOSIZE+cv2.WINDOW_KEEPRATIO+cv2.WINDOW_GUI_EXPANDE ...
- ZooKeeper 概述
ZooKeeper:分布式应用程序的分布式协调服务 ZooKeeper:是用于分布式应用程序的分布式开源协调服务 可以简单理解:ZooKeeper = 文件系统 + 通知机制 从设计模式角度理解:Zo ...
- java集合分割
java集合分割成等份的小集合: private <T> List<List<T>> getSubList(List list,int len) { if(list ...
- CSS 水平垂直居中的几种实现方法
前言 项目中经常碰到需要实现水平垂直居中的样式.下面就总结几种常用的方法 水平对齐+行高 [思路一]text-align + line-height实现单行文本水平垂直居中 <style> ...
- [再寄小读者之数学篇](2014-10-18 利用 Lagrange 中值定理求极限)
试求 $$\bex \vlm{n}n^2\sex{x^\frac{1}{n}-x^\frac{1}{n+1}},\quad x>0. \eex$$ 解答: $$\beex \bea \mbox{ ...
- [物理学与PDEs]第1章第6节 电磁场的标势与矢势 6.1 预备知识
1. 若 ${\bf B}$ 为横场 ($\Div{\bf B}=0\ra {\bf k}\cdot {\bf B}=0\ra $ 波的振动方向与传播方向平行), 则 $$\bex \exists\ ...
- AB PLC分类
AB PLC产品更新速度还是挺快的,以前很多产品都停产了,所以分类也跟着调整,就目前而言: 一.主要类型 AB PLC按类型,主要分为三大类: • 小型:MicroLogix控制器 • 中型:Comp ...