JSFiddle - React, Tailwind, and code Playground

by termi

HTML

<form name="myform">
    <input type="radio" name="foo" value="10"> foo
    <input type="radio" name="foo" checked value="30"> bar
</form>

<script>
;(function () {
    var form = document.createElement("form")
        , _NodeList_prototype_
    ;

    form.innerHTML = "<input type=radio name=t value=1><input type=radio checked name=t value=2>";

    if(form.t["value"] === 2)return;

    _NodeList_prototype_ = form.t.constructor.prototype;

    Object.defineProperty(_NodeList_prototype_, "value", {
        get: getRadioNodeListValue,
        set: setRadioNodeListValue,
        configurable: true            
    });
       
    function getRadioNodeListValue() {
        if(!this[0] || !this[0]["form"])return;

        var k = this.length
            , el
        ;

        while(el = this[--k]) {
            if (el.checked) {
                return el.value;   
            }
        }
    }
    
    function setRadioNodeListValue(value) {
        if(!this[0] || !this[0]["form"])return;

        var k = this.length
            , el
        ;

        while(el = this[--k]) {
            if (el.checked) {
                el.value = value;
                return el.value;   
            }
        }
    }
}());
</script>

JavaScript

var form = document.forms.myform;
var radio = form.elements.foo;
alert(radio.value);