【描述】

模仿官方文档的摄氏度和华氏度的转换,实现十进制和二进制的互换。

【实现】

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十进制和二进制转换的实现和分析的更多相关文章

  1. JAVA 十六进制和十进制、二进制转换

    java十六进制和十进制.二进制转换 十进制转化成十六进制 Integer x = 100; hex = x.toHexString(x); 十六进制转化成十进制 Integer.parseInt(h ...

  2. java中十进制转二进制转换函数

    十进制转成十六进制: Integer.toHexString(int i) 十进制转成八进制 Integer.toOctalString(int i) 十进制转成二进制 Integer.toBinar ...

  3. HDU_2051——十进制到二进制转换

    Problem Description Give you a number on base ten,you should output it on base two.(0 < n < 10 ...

  4. PHP函数篇详解十进制、二进制、八进制和十六进制转换函数说明

    PHP函数篇详解十进制.二进制.八进制和十六进制转换函数说明 作者: 字体:[增加 减小] 类型:转载   中文字符编码研究系列第一期,PHP函数篇详解十进制.二进制.八进制和十六进制互相转换函数说明 ...

  5. C++进制转换(十进制转二进制、八进制、随意进制)

    十进制转二进制: //十进制转二进制 #include<iostream> using namespace std; void printbinary(const unsigned int ...

  6. PHP函数十进制、二进制、八进制和十六进制转换

    PHP函数篇详解十进制.二进制.八进制和十六进制互相转换函数说明,主要掌握各进制转换的方法,以应用于实际开发. 一,十进制(decimal system)转换函数说明 1,十进制转二进制 decbin ...

  7. PHP:第一章——PHP中十进制、二进制、八进制、十六进制转换

    //十进制.二进制.八进制.十六进制转换 //十进制转换为二进制decbin()函数: //echo decbin(5);//输出:101 //十进制转换为八进制decoct()函数 //echo d ...

  8. C# 十进制与二进制、十六进制、八进制之间的转换

    1.十进制 转 二进制 将十进制数不断地除2,将所有余数倒叙填写,即可得到所需二进制数据. public static string DecimalToBinary(int vDecimal) { / ...

  9. ocrosoft Contest1316 - 信奥编程之路~~~~~第三关 问题 x: 十进制到二进制的转换

    http://acm.ocrosoft.com/problem.php?cid=1316&pid=49 题目描述 把十进制到二进制的转换. 输入 234 输出 11101010 样例输入 23 ...

随机推荐

  1. 天气预测(CNN)

    import torch import torch.nn as nn import torch.utils.data as Data import numpy as np import pymysql ...

  2. java 11 不可修改集合API

    不可修改集合API 自 Java 9 开始,Jdk 里面为集合(List/ Set/ Map)都添加了 of 和 copyOf 方法,它们两个都用来创建不可变的集合,来看下它们的使用和区别. 示例1: ...

  3. java jdbc ResultSet结果通过java反射赋值给java对象

    在不整合框架的情况下,使用jdbc从数据库读取数据时都得一个个的get和set,不仅累代码还显得不简洁,所以利用java的反射机制写了一个工具类,这样用jdbc从数据库拿数据的时候就不用那么麻烦了. ...

  4. 关于opencv的cv2.WINDOW_一类

    用法:cv2.namedWindow('窗口标题',默认参数) 默认参数:cv2.WINDOW_AUTOSIZE+cv2.WINDOW_KEEPRATIO+cv2.WINDOW_GUI_EXPANDE ...

  5. ZooKeeper 概述

    ZooKeeper:分布式应用程序的分布式协调服务 ZooKeeper:是用于分布式应用程序的分布式开源协调服务 可以简单理解:ZooKeeper = 文件系统 + 通知机制 从设计模式角度理解:Zo ...

  6. java集合分割

    java集合分割成等份的小集合: private <T> List<List<T>> getSubList(List list,int len) { if(list ...

  7. CSS 水平垂直居中的几种实现方法

    前言 项目中经常碰到需要实现水平垂直居中的样式.下面就总结几种常用的方法 水平对齐+行高 [思路一]text-align + line-height实现单行文本水平垂直居中 <style> ...

  8. [再寄小读者之数学篇](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{ ...

  9. [物理学与PDEs]第1章第6节 电磁场的标势与矢势 6.1 预备知识

    1.  若 ${\bf B}$ 为横场 ($\Div{\bf B}=0\ra {\bf k}\cdot {\bf B}=0\ra $ 波的振动方向与传播方向平行), 则 $$\bex \exists\ ...

  10. AB PLC分类

    AB PLC产品更新速度还是挺快的,以前很多产品都停产了,所以分类也跟着调整,就目前而言: 一.主要类型 AB PLC按类型,主要分为三大类: • 小型:MicroLogix控制器 • 中型:Comp ...